作业帮 > 综合 > 作业

C++书上讲,两个字符串比较是地址的比较.下面结果理应为:"not equal",但是现在输出"equal",

来源:学生作业帮 编辑:拍题作业网作业帮 分类:综合作业 时间:2024/05/13 16:11:04
C++书上讲,两个字符串比较是地址的比较.下面结果理应为:"not equal",但是现在输出"equal",
#include
void main()
{
if("join"=="join")//两个字符串的比较是地址的比较.运行结果理应为:"not equal",so tell me y
cout
字符串的定义是把数据放到一个字符串池
如果你用双引号""来创建String对象,那么他会先去这个池里面查找是否已经存在这个字符串,如果已经存在,把这个对象的引用返回给你,如果不存在,创建一个String对象返回,同时把这个对象放进池里面.
你这里2次都用双引号创建,他会从池里面返回同一个对象,所以是同一个地址,2个对象完全相等