2013-03-01 28 views
1

我正在嘗試在上課時無法完成的教程,而且我很難弄清楚我的錯誤。我從來沒有見過明確的資格錯誤,所以我甚至不知道從哪裏開始。在使用命名空間時,我可以在線找到唯一的資源,但我不認爲自己是,至少不明確(除了名稱空間標準)。C++錯誤:聲明中的顯式限定條件

我相信我正在做一個愚蠢的錯誤的地方,但這些都是我得到的錯誤:

View.cpp:12:55: error: explicit qualification in declaration of ‘void promptForAnimals(Animal**, int&)’ 
View.cpp:53:25: error: explicit qualification in declaration of ‘void printDance(Animal*)’ 

,這是我promptForAnimals功能:

void::promptForAnimals(Animal* barn[], int& numAnimals) 
{ 

    //Animal* barn[MAX_ANIMALS]; 
    int num; 
    string name; 

    cout << "How many birds? "; 
    cin >> num; cin.ignore(); 
    for (int i=0; i<num; i++) { 
    cout << "Name " << i+1 << ": "; 
    getline(cin, name); 
    barn[numAnimals++] = new Bird(name); 
    } 

    etc 
    } 

} 

和我printDanceAnimal是空,只是有:

void::printDance(Animal*) 
{ 
} 

錯誤可能很好,我的頭文件,所以她E - 這是很好的措施:

#ifndef VIEW_H 
#define VIEW_H 
#include "Animal.h" 
#include "defs.h" 
#include <iostream> 
using namespace std; 

class View 
{ 
    public: 
     View(); 
     ~View(); 
     void promptForAnimals(Animal**, int&); 
     void printDance(Animal*); 

}; 

#endif 

回答

2

你在這些函數的定義缺課名:

更新:

void::promptForAnimals(Animal* barn[], int& numAnimals) 
void::printDance(Animal*) 

要:

void View::promptForAnimals(Animal* barn[], int& numAnimals) 
void View::printDance(Animal*) 
+0

我知道這是一個愚蠢的錯誤!非常感謝!今天我一直在盯着代碼太久。 – Sarah 2013-03-01 01:33:30

1
void::promptForAnimals(Animal* barn[], int& numAnimals) 

這是錯誤。應該是:

void View::promptForAnimals(Animal* barn[], int& numAnimals) 
{ 
    // ... 
}