我似乎无法将基类用作函数参数,我是否搞砸了我的继承?
我的主要内容如下:
int some_ftn(Foo *f) { /* some code */ }; Bar b; some_ftn(&b);
并且类 Bar 以这种方式从 Foo 继承:
class Bar : Foo { public: Bar(); //snip private: //snip };
这不应该工作吗?我似乎无法在我的主要功能中进行该调用
你必须这样做:
class Bar : public Foo { // ... }
classC++中 a 的默认继承类型是private,因此基类中的 anypublic和protected成员仅限于private. struct另一方面public,默认情况下是继承。
class
private
public
protected
struct