因为A(int a=100){x=a}这样写的时候,int a=100有这句(这句是带默认值的) 如果你传入了参数参与构造,那么会使用你传入的值,如果没有就会使用默认值100 1.如果不传参数,那么会用默认值100给成员变量x赋值,相当于是A():x(100){} 2.如果传入参数,那么会用传入的值赋值给成员变量x,相当于A( int a){x=a;}
最近看郑阿奇的《visual c++使用教程》(第四版)P116页,有这样一句话: 与 “A(int a=100){x=a}”构造函数等价的是: A( int a){x=a;} A():x(100){} 构造函数“A(int a=100){x=a}” 怎么能包含了默认构造函数:A():x(100){}呢?高手能指点一下不?谢谢!!
64,651
社区成员
250,508
社区内容
加载中
试试用AI创作助手写篇文章吧