1 c++ inheritance templates class
我想知道这样的事情是可能的.也许使用模板和技巧?现在我强制执行的唯一规则是你不允许在类栏中使用构造函数(所以你不能传入一个引用或指向foo的指针或a).
class Foo{
int a;
public:
struct Bar{
int barme(){ return a; }
};
};
Run Code Online (Sandbox Code Playgroud)
我知道一个问题是bar如何知道要使用哪个foo实例?我不知道但是我想要一个foo来拥有很多类的Bar和多一个foo,每个都会有一个以上的吧.
我确定我在某个地方看到了一个技巧(也许是用不同的语言),但我不知道在哪里.我确实记得使用编译时const的模板,但foo在这种情况下不会是编译时间,尽管它的ptr/ref可能是
在C++中,嵌套类只是类.它不像Java那样嵌套类带有父类的实例.因此,这样的事情是不可能的.你必须传递一个Foo内部操作的实例Bar.(例如std::vector::iterator,没有std::vector- 它是一个完全独立的类型)