构造器——在生成对象的时候,自动初始化。
一、构造器的特点
- 与类名相同,无返回
- 系统生成对象的时候被自动调用,用于初始化
- 可以有参数
因为可以有参数,自然就有了
构造器的重载
,和默认参数
- 如果没有提供任何构造器,系统默认生成一个
无参空构造器
。如果我们提供了构造器,则系统是不会再生成这个默认构造器
的。 - 默认参数
Stack (int size = 123)
,但是当生成一个stk
对象的时候,可能回产生二义性,因为回纠结于是调用无参构造器
还是有默认参数的有参构造器
。所以说构造器的
重载
和默认参数
不能同时存在(但是要可以实现对象的无参创建
)。
写一个对象的无参构造器是标配
标配
无参构造器
Stack s2;
但是不能写成
Stack s2()
,这样只能过编译
,但是会被当成函数声明
。
有参构造器
Stack s1(100);
可以类比下string
string的无参和有参
网友评论