C++中string和char的區別以及直接初始化和拷貝初始化

string和char的區別


‘\0’是c/c++語言中的字符串結束符,在ASCII字符集中對應空字符NULL。


使用string類,必須要在頭文件寫明#include<string>,使用string會在字符串的末尾自動加入一個\0,而且字符串使用雙引號,char不在末尾自動加0,一般用單引號——char a = 'A';

string s1("hello");



直接初始化和拷貝初始化


如果使用等號(=)初始化一個變量,實際上執行的是拷貝初始化,編譯器把等號右側的初始值拷貝到新創建的對象中去。與之相反,如果不使用等號,則執行的是直接初始化。

string s5="hiya";   //拷貝初始化

string s6("hiya");   //直接初始化

string s7(10,‘c’)//直接初始化,內容爲ccccccccc

(C++ Primer 第5版 P76)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章