2009-12-11 91 views
1

我有一個函數來顯示一個表中的矢量值,但是我在鏈接時不斷收到一個「Undefined symbols」錯誤。在C++/Eclipse中未定義的符號錯誤

這裏是我的函數原型:

void displayVectors(vector<string> & nameVec, vector<double> & scoreVec, vector<char> & gradeVec); 

這裏的定義是:

void dipslayVectors(vector<string> & nameVec, vector<double> & scoreVec, vector<char> & gradeVec) { 

    for (int i = 0; i < nameVec.size(); i++) { 
     cout << setw(12) << nameVec[i] 
      << setw(8) << scoreVec[i] 
      << setw(2) << gradeVec[i] 
      << endl; 
    } 

} 

這裏就是我把它叫做:

displayVectors(nameVec, scoreVec, gradeVec); 

我敢肯定nameVec,scoreVec,和gradeVec都是正確的載體類型,並且我包含了所有的庫,所以我很難過。我曾經見過Google上的其他人遇到過這類媒體的問題,但他們總是發現他們犯了一些錯誤。有沒有人有任何想法?

+0

您是否嘗試從shell編譯它以瞭解它是否是一個日食問題或更一般的東西? – Jack 2009-12-11 08:09:26

+1

*什麼*符號被報告爲未定義? – AnT 2009-12-11 08:13:53

+1

對不起,我忘了添加實際的錯誤信息,但它似乎不會有什麼重要的... – eds 2009-12-11 08:51:16

回答

1

假設你砍&直接粘貼你的問題,然後void dipslayVectors是在定義

+0

它總是小細節... – 2009-12-11 08:21:13

+0

是啊...當你的第二套眼球很棒我獨自一人工作 – 2009-12-11 08:26:54

+0

在我的代碼中,我盯着他們很長時間,沒有看到任何拼寫錯誤,當你指出時,我仍然不得不看它約20秒...哇,它是如此晚...謝謝! 奇怪的部分是它實際上從來沒有像在編譯時發現錯誤時一樣指出紅色的錯誤。然後,我打了一些其他的調試鍵,它告訴我,它沒有被定義。 – eds 2009-12-11 08:30:06

0

從代碼中的拼寫錯誤,有可能是錯誤的2個可能的來源:

1.dipslayVectors的拼寫錯誤。

2.您可能沒有定義實際參數。

3.一個建議是使函數const,因爲它只讀取數據,並使形式參數作爲const數據的參考。

相關問題