2013-01-23 74 views
1

我對Code :: Blocks完全陌生,對我來說這似乎很奇怪。我試圖在名爲myClass的類中定義一個名爲myString的字符串,但我無法定義類型爲string的變量,也無法在我的類中調用iostream。我需要它使用coutcin。使用字符串如何在Code :: Blocks中的新類中使用字符串?

+2

你似乎缺少包括性病或者不出線類型/對象:: – MFH

+0

感謝期待你的答覆。我在.cpp文件中包含了iostream,但仍然無法實現cout。我可以定義int float,但不能定義一個string類型的變量。 –

+0

我知道的是,我花了幾個小時來實現一個簡單的字符串,我很想念自己的想法。 :)這是當我欣賞視覺工作室,特別是C#作爲一個智能IDE –

回答

2

簡單的例子是...

// ide-Code::Blocks 10.05 
// test.cpp 
#include<iostream> 
#include<string> 
using namespace std; 
class myclass{ 
    public: 
     void assign_String(){ 
     string myString; 
     const char *str2 = "StRiNg assign()"; 
     cout<<"str2, C string is: "<<str2<<endl; 
     myString.assign(str2); 
     cout<<"\n Assign String is "<<myString<<"\n"; 
    } 
}; 
int main() 
{ 
    myclass mc; 
    mc.assign_String(); 
    return 0; 
} 

欲瞭解更多有關的std :: string遵循參考here

編輯: - 查看您的評論之後,您可以鏈接錯誤。所以爲了解決這個問題,你必須創建一個新項目並添加文件(類)。沒有main()函數的類不能被鏈接......我做的例子是here

+0

感謝您的答覆。這是正確的,但是當我創建一個新類時,我在code :: bocks中發現它會使兩個文件與.cpp格式和另一個.h文件在.h文件中類的原型應該被定義,並在.cpp中變量和方法的實際代碼。 我想要做的是在我的類文件中使用cout和cin,這與包含main方法的文件不同。 –

+0

但我之前定義了頭文件的路徑,並且還從main()函數中調用了我的類。我的問題是我無法調用iostream.h,因此無法調用cout和cin預定義的方法。 –

+0

這是我的.h文件的內容: 的#ifndef MYCLASS_H 的#define MYCLASS_H 的#include 的#include MyClass類 { 市民: MyClass的(); virtual〜myClass(); int showMessage(int); protected: private: }; #endif // MYCLASS_H –