博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
20180517
阅读量:5036 次
发布时间:2019-06-12

本文共 460 字,大约阅读时间需要 1 分钟。

有如下程序段:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
    
#include 
"stdio.h"
 
class
A
{
    
public
:
    
A()
    
{
        
printf(
"1"
);
    
}
    
A(A &a)
    
{
        
printf(
"2"
);
    
}
    
A &operator=(
const
A &a)
    
{
        
printf(
"3"
);
        
return
*
this
;
    
}
};
int
main()
{
    
A a;
    
A b = a;
}
则程序输出为:
12
13
无法确定
编译出错 答案:A 错选:B
A a,定义一个对象,毫无疑问调用构造函数
A b=a,这是定义了对象b,且以a对b进行初始化,这个时候需要调用拷贝构造函数。
如果写成A a;A b;b=a;则是调用后面重载的赋值函数,这种情况应该输出113。
这个题主要考察赋值和初始化的区别。
 

转载于:https://www.cnblogs.com/kxzh/p/9107622.html

你可能感兴趣的文章
phpcms 添加自定义表单 留言
查看>>
mysql 优化
查看>>
读书笔记 ~ Nmap渗透测试指南
查看>>
WCF 配置文件
查看>>
动态调用WCF服务
查看>>
oracle导出/导入 expdp/impdp
查看>>
类指针
查看>>
css修改滚动条样式
查看>>
2018.11.15 Nginx服务器的使用
查看>>
Kinect人机交互开发实践
查看>>
百度编辑器UEditor ASP.NET示例Demo 分类: ASP.NET...
查看>>
JAVA 技术类分享(二)
查看>>
android客户端向服务器发送请求中文乱码的问
查看>>
UOJ#220. 【NOI2016】网格 Tarjan
查看>>
Symfony翻译教程已开课
查看>>
Python模块之pickle(列表,字典等复杂数据类型与二进制文件的转化)
查看>>
通过数据库表反向生成pojo类
查看>>
css_去掉默认样式
查看>>
TensorFlow2.0矩阵与向量的加减乘
查看>>
NOIP 2010题解
查看>>