2013-11-21 56 views
0

A C++函數的函數是如下:這是一個自動生成的谷歌從協議緩衝器的代碼。這用於.proto文件中的變量字符串NodeId。問題與編譯它返回字符串&

inline const ::std::string& TestClass::nodeId() const { 
    return *nodeId_; 

上述函數被調用如下

const std::string& NodeId = TestClass.Testconfig().nodeId; 

當我編譯這個文件,我得到下面的錯誤。

prgms# g++ test.cpp 
test.cpp:96:56: error: invalid initialization of reference of type ‘const string& {aka const std::basic_string<char>&}’ from expression of type ‘<unresolved overloaded function type>’ 

有些身體指向我,這裏有什麼錯,以及如何解決這個特定的錯誤?

+0

是什麼類型'nodeId_'? –

回答

2

你忘了調用該函數:

const std::string& NodeId = TestClass.Testconfig().nodeId(); 
                 ^^ 
+0

超級回答@超快速。我錯過了很長時間。我真的很感激。 – user2896235