c++没有抽象类的概念,也没有接口,也没有实现。只有类的概念。
纯虚函数类似于java中的抽象类。没有函数体,是由定义。虚函数则有函数体。
纯虚函数
纯虚函数子类必须进行实现。和java中的抽象类一个概念。
class BaseActivity
{
public:
void onCreate(){
initView();
initData();
}
virtual void initData() = 0; // 纯虚函数
virtual void initView() = 0;
};
class MainActivity : public BaseActivity
{
public:
void initData(){ // 必须要进行函数的实现。
cout << "MainActivity initData" << endl;
}
void initView(){
cout << "MainActivity initView" << endl;
}
};
void main(){
MainActivity * m = new MainActivity();
m->onCreate();
getchar();
}
接口 如果类的所有函数都是虚函数,那么可以认为是一个接口。
class clickListener
{
public:
virtual void click() = 0;
};
模板函数 类似于java中的泛型。
template <typename T>
T add(T a, T b){
return a + b;
}
void main(){
int a = add(1,2);
cout << a << endl;
getchar();
}