在Qt寫一個程序的時候忽然遇到這個問題。意思是說const char*向char*的轉換是不允許的。
使用Qt來舉個例子:
QString qstr("This is a test!");
char* str = qstr.toStdString.data();
這樣就會報上面的錯了,如果換成:
QString qstr("This is a test!");
const char * str = qstr.toStdString.data();
這就沒有錯了。很顯然,qstr.toStdString.data的返回值是const char*型。
這樣就帶來一個麻煩,就是如果我們要對str進行修改什麼操作的話就不可行了,只能另外再建立一個字符數組來複制str所指向的字符串了。