const char* = char*
char*轉const char* 可以轉。發過來不行
去掉const屬性方法如下:
string str = "aaa"; char* p =const_cast<char*>(str.c_str()); printf("%s",p);
const_cast用來丟棄變量的const聲明,但不能改變變量所指向的對象的const屬性。即:const_cast用於原本非const的對象;如果用於原本const的對象,結果不可預知(C++語言未對此種情況進行規定),請注意我上面用下劃線標示的“變量”vs“對象”這個要自己慢慢體會。 一般情況下const_cast是用於這種情形:const指針(變量)指向非const對象,程序員確認這一點(所指向的對象非const)時,使用const_cast操作符丟棄變量的const修飾獲得一個非const指針,詳見《The C++ Programming language(special edition)》第15.4.2.1節。