在類構造函數中,我創建了一個字符串,並將其存儲到*this
中。 構造函數中的此代碼不起作用:在C++的構造函數中放入一個字符串
// Inside the class constructor
string str1 = "hello";
*this = str1;
我應該使用一些其他的數據類型,而不是string str1
?有什麼建議麼?
在類構造函數中,我創建了一個字符串,並將其存儲到*this
中。 構造函數中的此代碼不起作用:在C++的構造函數中放入一個字符串
// Inside the class constructor
string str1 = "hello";
*this = str1;
我應該使用一些其他的數據類型,而不是string str1
?有什麼建議麼?
*this
它是你的類對象的實例。
你不能這樣做,直到*this= str1;
你們班是不是std::string
或者,它可以提供一個轉換賦值操作符operator =(std :: string const&)' – 2012-11-30 23:01:34
這將是很高興看到你的類確定指標,但由於它不存在讓我做一個長鏡頭,並試着猜測什麼問題。
當您聲明一個類時,它最初是空的。你不能在構造函數中存儲任何東西。
class Empty {
Empty() { /* can't do much here */ }
}
類由成員字段組成,它們可以爲您存儲數據。你可能想要做的是這樣的:
class String {
std::string member;
String() {
std::string str1 = "hello";
member = str1;
}
}
你重載'operator =(std :: string const&)'? – Pubby
'* this'的類型是什麼? – 2012-11-30 23:00:00
你在試圖實現什麼 - 這個構造函數是如何調用的,它是什麼類型 – Mark