C++题目(二)

本文涵盖了多个C++编程题目及其解析,包括常量定义、宏定义、类成员函数、运算符重载、继承与多态、内存管理等方面的知识点,旨在帮助读者深入理解C++语言。
摘要由CSDN通过智能技术生成

1.用预处理指令#define声明一个常数,用以表明1年中有多少秒(忽略闰年问题)。
#define  SECONDS_PER_YEAR(60*60*24*365)UL
应该意识到表达式将使一个16位机的整形数溢出,因此要用到长整型符号L,表达式中UL表示无符号长整型。

2.写一个“标准”宏MIN,这个宏输入连个参数并返回较小的一个。
#define MIN(A,B) ((A)<=(B)?(A):(B))
懂得在宏中小心的吧参数用括号扩起来

3.C++中的空类默认产生那些类成员函数?
Class Empty
{ public:
};
答案:对于一个空类,编译器默认产生4个成员函数:默认构造函数,析构函数,拷贝构造函数和赋值函数

4. 如果定义了一个类myclass,则为myclass类对象以成员函数形式重载后++运算符的声明应该为 C
A. myclass operator++();
B. myclass& operator++();
C. myclass operator++( int );
D. myclass& operator++( int );

解析:B为前++的表达,后++为了与前++区别开来才多加的一个参数int并没有什么特殊的意义,只是调用的时候传个0或其他的整数就可以调用后++。至于为什么后++返回的不是引用,这就要看后++的实现了。代码如下:

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值