C++——拷贝初始化与直接初始化

如果使用(=)初始化一个变量,实际执行的是拷贝初始化,编译器把等号右侧的初始值拷贝到新创建的对象中去。如果不使用等号,则执行的是直接初始化。
当初始值只有一个时,使用直接初始化或者拷贝初始化都行。但当初始化要用到多个值时,只能使用直接初始化:
string s5 = "hiya"; //拷贝初始化
string s6("hiya"); //直接初始化
string s7(10, 'c'); //直接初始化,s7的内容是cccccccccc
对于多个值进行初始化时,使用拷贝初始化:
string s8 = string(10,'c'); //拷贝初始化,s8的内容是cccccccccc
上面的拷贝初始化,本质上等价于:
string temp(10, 'c'); // temp的内容是 cccccccccc
string s8 = temp; // 将temp拷贝给s8

String对象上的基本操作:

值得注意的是,在进行cin>>读取操作的时候,会自动忽略开头的空格以及换行、制表等空

C++——拷贝初始化与直接初始化最先出现在Python成神之路

版权声明:
作者:主机优惠
链接:https://www.techfm.club/p/19674.html
来源:TechFM
文章版权归作者所有,未经允许请勿转载。

THE END
分享
二维码
< <上一篇
下一篇>>