T
thomas
//-----------------------------------------------------------
#include<iostream>
#include<cstring>
using namespace std;
class B1{
public:
virtual void fun() = 0;
};
class B2{
public:
void fun();
};
class A
ublic B1, private B2{
public:
A(){
B1::fun();
B2::fun();
}
};
int main(){}
//-------------------------------------------
The above code links well but B1::fun() and B2::fun() are not defined.
//----------------------------------------------
#include<iostream>
#include<cstring>
using namespace std;
class B2{
public:
B2(){}
void fun();
};
int main(){
B2 b;
b.fun();
}
//---------------------------------------
In this case, the func() definition miss causes a link error.
Any explanation?
#include<iostream>
#include<cstring>
using namespace std;
class B1{
public:
virtual void fun() = 0;
};
class B2{
public:
void fun();
};
class A
public:
A(){
B1::fun();
B2::fun();
}
};
int main(){}
//-------------------------------------------
The above code links well but B1::fun() and B2::fun() are not defined.
//----------------------------------------------
#include<iostream>
#include<cstring>
using namespace std;
class B2{
public:
B2(){}
void fun();
};
int main(){
B2 b;
b.fun();
}
//---------------------------------------
In this case, the func() definition miss causes a link error.
Any explanation?