2014-09-23 18 views
-1

我一直在嘗試着用C++進入一個更加面向對象的編程,而且我沒有看到我在做什麼錯誤,因爲無論如何,eclipse都給了我一個錯誤。C++ Eclipse不能與類合作

好吧,這個班級叫做牛排,因爲這不是一個真正的程序,只是一個實驗。 這裏是steak.cpp

#include "Steak.h" 
Steak::Steak() 
{ 

} 

void Steak::cook() 
{ 

} 

和steak.h

#ifndef STEAK_H_ 
#define STEAK_H_ 

class Steak 
{ 
    public: 
     Steak(); 
     void cook(); 

}; 

#endif 

它有錯誤(Steak.cpp)牛排::牛排(),牛排煮::()(這是隻是想看看我能不能做一個函數)

「牛排」還沒有被宣佈 「牛排」不是一個類或命名空間

感謝您的答覆,但它仍然沒有沒有解決問題。

+0

你這樣做是完全錯誤的另一種方式:'#包括「Steak.cpp」'最有可能你會在其他地方需要一些前瞻性聲明。 – 2014-09-23 02:44:29

+0

嗯,儘管做了這個修改,問題仍然沒有解決。 – CLASSIFIED 2014-09-23 02:49:44

+0

這不是你應該改進你的帖子的方式。提供清晰且可重複的樣本,以及您收到的逐字錯誤消息。 – 2014-09-23 02:51:37

回答

0

您必須將steak.h包含在steak.cpp中,否則您會以相反的方式進行操作。首先在頭文件中聲明原型,然後將頭文件包含到cpp中。

+0

我已經有這樣的,但忘了包括它,意外地省略它在複製/粘貼 - 我也刪除了#include「steak.cpp」 – CLASSIFIED 2014-09-23 02:57:40

+1

使用'#include「steak.h」'而不是'#包括如果你的系統是區分大小寫的(像大多數Unix一樣),那麼「Steak.h」。順便說一句,你需要一個'int main()'函數作爲程序的起點。 – vsoftco 2014-09-23 03:03:14

+1

好點。雖然這應該與一個簡單的「包含文件未找到」錯誤消息一起出現。我只是相信OP在欺騙我們的代碼以及它們顯示的錯誤消息。 – 2014-09-23 03:05:57

0

你的cpp文件需要包含頭文件,而不是相反

+0

我忘了包括那個,但我擁有它。問題仍然存在。 – CLASSIFIED 2014-09-23 02:54:36