C++的一個問題,比方char[]="very good";string b=char;
2 回答

子衿沉夜
TA貢獻1828條經驗 獲得超3個贊
首先char是關鍵字,您的意思應該是
char ch[]="very good"; string b = ch;
這是因為string有構造函數:
string(const char* c);能夠將一個char*類型的地址轉換為一個string變量
而string b = ch;則會調用該函數(注意不是復制構造函數)。即
string b = ch;等價于string b(ch);

手掌心
TA貢獻1942條經驗 獲得超3個贊
不相信C++下char[]="very good";string b=char;這兩句代碼的正確性——char是C/C++的保留字,不可以用來做用戶數組名,這樣寫編譯恐怕都過不了。如果不用char而用別的什么如str,那么string b=str;就是聲明一個string類對象b,并用str指向的字符串初始化。
- 2 回答
- 0 關注
- 128 瀏覽
添加回答
舉報
0/150
提交
取消