我知道幾乎所有的事情都在'全局'主題上說過。在這裏回到道歉的道歉。生產代碼中有一些東西,我不完全理解。非常感謝這方面的幫助。所以提前謝謝。Globals再一次
考慮下面的實現:
file1.h
class classA
{
classA();
// something in
};
const classA& GetClassA();
file1.cpp
classA::ClassA()
{
cout << "I have been called";
// do initialization
}
const classA obA;
const classA& GetClassA() { return obA; }
的GetClassA功能全部叫到身邊。翻譯單元中可以看到同樣的全局對象(我認爲)(至少這是我的期望)。然而(神祕地對我來說)看起來好像classA c-tor被多次調用。任何人都可以詳細說明,請問?
'const A;'無效,你的意思是'const classA A;'? –
對不起,讓我糾正 – AdR
到目前爲止,您發佈的代碼中沒有任何內容會導致構造函數被多次調用。 – AnT