6
我知道i
的類型在main()
以下是int&
。這就是爲什麼它必須被初始化。main()中的'i'類型。爲什麼它是一個int&?
int& f(){ static int i = 1; return i; }
int main()
{
decltype(f()) i = f();
}
但是用在標準段落5p5
,我的結論是表達f()
已鍵入int
作爲參考被丟棄。
從7.1.6.2p4
,如果表達式f()
是一個左值,考慮到引用是從函數返回中刪除的?
請注意,這幾乎就是C++ 14'decltype(auto)'特性的工作方式。 – PlasmaHH