當編譯這個代碼,我得到以下error:非const引用的無效初始化是什麼意思?
In function 'int main()': Line 11: error: invalid initialization of non-const reference of type 'Main&' from a temporary of type 'Main'
這裏是我的代碼:
template <class T>
struct Main
{
static Main tempFunction(){
return Main();
}
};
int main()
{
Main<int> &mainReference = Main<int>::tempFunction(); // <- line 11
}
我不明白爲什麼?誰能解釋一下?
什麼是錯誤 – Mark 2010-09-15 17:10:28
請張貼從編譯器確切的錯誤消息。 – 2010-09-15 17:10:41
您的模板聲明不依賴於參數化的類。 – 2010-09-15 17:11:34