爲什麼彈出「.. \ src \ Test.cpp:30:9:錯誤:從const char [5] '非標量類型'測試'要求 「?錯誤:從'const char [5]'轉換爲C++中的非標量類型
但爲什麼在後續代碼中可以使用?
#include <iostream>
using namespace std;
class Test{
public:
string str;
Test(string str){
this->str=str;
cout<<"constructor"<<endl;
}
Test(const Test &test){
cout<<"copy constructor"<<endl;
this->str=test.str;
}
};
int main() {
Test t=Test("test");
return 0;
}
@Petesh這是建設,而不是分配。 – 2013-04-27 13:09:49
因爲字符串有一個const char *的默認構造函數。 – 2013-04-27 13:10:28
誤讀了代碼,刪除了不準確的評論。感覺有點像製作評論的布偶 – Petesh 2013-04-27 13:12:12