永发信息网

C++问题:这段代码里T t和T& t有什么区别?

答案:3  悬赏:0  手机版
解决时间 2021-03-24 20:26
C++问题:这段代码里T t和T& t有什么区别?
最佳答案
构造函数: 在如下定义时调用: T t; T *s = new T[n];
T(){
cout<<"T::T()"< }

拷贝构造函数: 如下定义时调用: T a; T b(a); T c = a; (拷贝引用对象的成员, b和c等于调用了拷贝构造函数;只在初始化且参数是本类型时才会调用, 如c = a 时不会调用, 因为它不是在初始化时).
T(T& a){
cout<<"T::T(T&)"< }

析构函数: 在对象销毁是调用.
~T(){
cout<<"T::~T()"< }
默认的拷贝构造函数,它默认复制引用对象的所有成员, 你也可以对它进行重载来完成成员变量的自定义,如指针的空间分配.
全部回答
前面是普通的传入参数,后者是引用,功能和穿指针差不多,但使用上没指针那么麻烦,里面的值改了,外面的值也变了追问这点我知道,可是传入参数为什么t里的i就变化了呢?追答就是一个地址有两个符合变量表示它,也有人说是在产生引用,在函数结束后产生一个临时变量,把值放到临时的变量里面,当退回的主函数里面后再把这个值赋值给那个变量
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
剑桥雅思的1-8这套书到底是什么?讲的什么内
什么是IP地址?
周公解梦梦见家里着火
粗铜提炼的方式是怎样的?
谁能给修改下彩票上的数字呢?第一行改成21-2
求一DNF群头像,要带DNF这样字眼的。比较好看
三国志12决战称霸什么时候出?还会有吗?
风儿舞起来花儿舞起来是那首歌曲
七岁小朋友可以吃石斛炖鸽子吗
犯罪嫌疑人在没判之前会不会冻解房产
c1科目一高速公路进入匝道转向灯怎么打
26克用分数表示等于多少千克
怎样自己在家做麻辣鸭头鸭脖子
灯泡底端要接火线还是零线?
印度是最早采制和饮用茶叶的国家吗
推荐资讯
我是1973年正月初一下午5点多出生,命运怎样
为什么亏损合同要确认为预计负债
这是买海虹时夹带的一个东西。请问这是什么?
电视里谭以正代言的那个七日瘦身汤谁喝过,管
如何用中值定理证明若两个函数有相同导数,则
watch的意思
这两款风衣哪款比较时尚 适合百搭
漂妙少女 小说
奇星电控原厂设置怎么办?
0.6千克和0.60千克一样重对还是错
无创dna结果21号染色体值20.69意味着什么
从别人手里买辆车 要办什么手续
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?