才开始接触面向对象,在c++继承与派生这里感觉有好多东西我都分不清了
比如说
class base{
//TODO
};
class derived:public base{
//TODO
};
那么这几条语句分别是在干嘛,有什么区别吗
base *p = new base;
base *p = new derive;
base *p = new base();
base *p = new derive();
求依次解答一下,感谢。
才开始接触面向对象,在c++继承与派生这里感觉有好多东西我都分不清了
比如说
class base{
//TODO
};
class derived:public base{
//TODO
};
那么这几条语句分别是在干嘛,有什么区别吗
base *p = new base;
base *p = new derive;
base *p = new base();
base *p = new derive();
求依次解答一下,感谢。
第一个就是创建一个基类对象指针
第二个创建一个子类对象,但赋值给基类指针
第三个和第一个一样
第四个和第二个一样
默认构造函数可以不写括号。你的子类名写错了......