访问嵌套类构造函数
问题描述:
如何编写嵌套类构造函数的代码?因为下面的例子给我的错误访问嵌套类构造函数
foo.h中
class foo
{
public:
class bar
{
public:
bar();
~bar();
}
private:
}
Foo.cpp中
#include "foo.h"
foo::bar()
{
}
答
你必须明确地命名构造函数的foo::bar
成员没有的, foo
。调整名称如下:
foo::bar::bar() {}
// ^^^^^
答
因为酒吧是一个“派生类”富的,如果你想访问函数bar(),这意味着,你需要先访问类的吧。
栏()是FOO ::酒吧::
的命名空间,您需要尝试富::酒吧::巴()
答
class foo {
public:
foo() : _bar(this) {}
class bar {
public:
bar(const foo* base);
~bar() {}
private:
const foo* _base;
};
private:
bar _bar;
};
foo::bar::bar(const foo* base) : _base(base) {}
加入一个变量在那里也如果需要的话,展示如何在嵌套类中调用外部类函数。
作为一个方面,你也有语法错误。你错过了一个;关闭课程}。
请提供错误和代码的部分,当你问。 – ChiefTwoPencils 2014-10-19 17:14:07