我一直在阅读“C++ 入门”。对于对象的初始化,C++ 支持 2 种初始化形式:直接和复制。但是书上没有提到初始化的参考。在书中,我从未见过引用的直接初始化(如果存在)。一切都是副本,例如:
int i;
int &j = i;//but not int &j(i);which also works in my experiment
我想知道在下面进行引用的初始化是否相同。对于以下代码:
string null_book = "9-999-99999-9";
初始化过程是首先创建一个临时字符串对象tmp(例如),它将直接使用ac样式字符串参数进行初始化,然后使用复制构造函数初始化变量null_book。这对我来说很有意义。对于这个:
int &j = i;
ref j 会以同样的方式初始化吗?这将是一个临时引用,它 &t(例如)由 i 初始化,然后用 t 初始化 j?这没有意义???为什么书中从不使用直接初始化作为参考?感谢您的关注!