好吧,就分配在構造函數/函數聲明爲靜態變量(我不認爲它很重要,其)來定義的編譯時間價值,就好像這些變量只被分配一次,請參閱示例:函數作用域內的靜態聲明和定義不會改變?
#include <iostream>
#define y 4
#define z 3
using namespace std;
class Foo
{
public:
Foo(int x)
{
static int i = x;
cout << i << endl;
}
};
int main()
{
Foo p(y);
Foo o(z);
return 0;
}
預期輸出:
實際輸出:
我無法找到任何搜索,但如果這是一個欺騙只是讓我知道,我會關閉的問題。
好的,這很有道理,歡呼:) – Geoff