我似乎不能使用基类作为函数参数,我是不是搞砸了我的继承?
我的main中包含以下内容:
int some_ftn(Foo *f) { /* some code */ };
Bar b;
some_ftn(&b);
以及从Foo继承的类Bar:
class Bar : Foo
{
public:
Bar();
//snip
private:
//snip
};
这不应该行得通吗?我似乎不能在我的main函数中进行这个调用
发布于 2011-01-31 10:22:12
你必须这样做:
class Bar : public Foo
{
// ...
}
C++中class
的默认继承类型是private
,因此基类中的任何public
和protected
成员都被限制为private
。另一方面,默认情况下,struct
继承是public
。
发布于 2011-01-31 10:25:05
默认情况下,继承是私有的。您必须显式地使用public
class Bar : public Foo
https://stackoverflow.com/questions/4847100
复制相似问题