我認爲這是一個非常新的問題,但我從來沒有找到答案。我不知道該如何描述這個問題,但是我經常發現,我必須根據當前層次結構訪問與當前對象「遙遠」的對象。我只是想確保這是做到這一點的正確方法。C++訪問遠離當前類層次結構的對象
這同時也從main傳入參數。我發現遠離主體的一些對象需要多次傳入一個參數。遠離主體的對象如何從命令行獲取信息?
例如,對於第一種情況,對於4班...
class A{
B b;
//need to check status of D
//choice 1
b.get_c().get_d().get_status();
//choice 2
const C& c = b.get_c();
const D& d = c.get_d();
d.get_status();
};
class B{
public:
C c;
const C& get_c() {return c;}
};
class C{
public:
D d;
const D& get_d() {return d;}
};
class D{
public:
bool check_status();
};
說類似,A是汽車,B是門組件,C是門,d是鎖。然後A必須檢查說,是鎖定的,否則阻止啓動。選擇3是直接從A調用D的方法,我必須在C,B和A中創建幾層check_status()並返回D,C,B.check_status()。
不要所有這些調用子對象(如果代碼有點複雜)會得到很多開銷嗎?
謝謝。