的私人承包商,客人我有一類結構類似這樣的訪問類
class B;
class A {
private:
B *b;
public:
A(int val) {
b->SetVal(val);
}
};
class B {
private:
int mynum;
public:
B();
void SetVal(int value) {
mynum = value;
}
};
而且主:
void main(){
A Head(10);
}
這個程序編譯,但在運行時返回一個訪問衝突。據我所知中的mynum
是private
,但即使我公開它不起作用。這是爲什麼?
我認爲b = new B();將需要完整的B類規範,這在頭文件中是不可用的,但是如果c-tor將被放入實現文件中則可用。 – marcinj