c++笔记 2

1 构造函数 :声明该类对象是,构造函数将被自动调用。


先声明 后调用构造函数。
Dateofyear date1(7,4)  ,date2(5,5)


相当于
Dateofyear  date1;
Dateofyear date2;
date1.Dateofday(7,4);
date2.Dateofday(5,5);


2 构造函数显示调用:
构造函数也可以在对象已经声明过后再次调用.
显示调用构造函数来构造一个匿名对象,用来存储一个新值。
匿名对象就是指没有用任何变量来命名的对象。
holiday=DayofYear(5,5);


3 成员函数不修改调用对象值。在函数后加const
void output() const;


4 内联函数:在类定义中给出成员函数的完整定义。
在编译时,内联函数的代码将会被直接插入到每个调用该内联函数的地方


5 静态变量: 一个类所有的对象都要共享一个变量。


6 向量:
capacity() 获取向量的容量。其为这些元素所分配的内存空间大小。
向量的大小指的是向量中所包含的元素个数。


       8章


友元函数:拥有成员函数的一切权利的非成员函数。


自动类型转换:


构造函数的自动类型转换:如果类定义中包含了合适的构造函数,那么系统会自动进行某些类型转换。
所有自动类型的仅仅对第二个参数起作用。
1 fullAmount=baseAmount+25;
+函数的参数是money,而25是int,于是从构造函数中找寻。
构造函数将25转换成money. 如果构造函数中没有将int 转换为money对象的构造函数
则编译器提示错误。


2  如果将加号作为成员操作符重载。
fullAmount=25+baseAmount;
则错误。
因为25不能作为调用对象,money类的构造函数自动类型转换仅仅对参数有用,而对调用对象不适用。
若是非成员函数重载,非成员函数重载可以使所有的参数都能进行自动类型转换。


友元类:
如果将F声明为类c的友元,代码框架为:
class F;//提前声明
class c{
public :
.......
friend class f;


}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值