我有A類:C++繼承,構造真實主叫
class A
{
A(const String& name)
{
doSomething1();
}
}
而且我也有B類
class B : A
{
B(const String& name): A(name)
{
doSomething2();
}
}
所以,如果我叫B(),它也將調用A(),它將會產生2x調用doSomething()。 有沒有什麼辦法如何在A的構造函數中發現它是直接調用的:A()和間接時:B()?
感謝
編輯: 好吧好吧,這是不一樣的方法DoSomething的(),它更像doSomething1()和了doSomething2(),但我想呼籲的最外面的功能,所以如果A有doSomething1 ()和B了doSomething2()調用B之後()我想只執行了doSomething2()
沒有黑客,沒有。我想這個設計是錯的。 – cubuspl42
不要打擊類型系統。讓它工作*爲*你。 –
我有這樣的感覺,你要求一個XY問題,如果不僅僅意味着一個學術問題。 –