C++中重构函数声明定义与static变量使用方法

1、重构函数
(1)若重构函数无返回值,声明时连void都不能加上
(2)在类中就要定义重构函数
析构函数也是如此,如下

//正确用法 class Data { public: Data() { } }; //错误用法1 class Data { public: Data(); }; //错误用法2 class Data { public: void Data(); }; //错误用法3 class Data { public: void Data() { } };

2、static变量
(1)static变量一定要初始化,在成员函数或重构函数中初始化均易出错,在类的结尾处初始化static变量是一种较好的方法

class Date { private: static int defaultDate; public: void setDefaultDate(int dat); void printDefaultDate(); }; //在类的结尾初始化static变量 int Date::defaultDate = 0;

(2)用类定义两个对象,两个对象中的static变量均为同一存储空间
(There is exactly one copy of a static member instead of one copy per object-10.2.4-the c++ programming language)

Date date1, date2; date1.setDefaultDate(10);//将defaultDate赋值为10 date2.setDefaultDate(60);//将defaultDate赋值为60 //此时无论是date1还是date2中的defaultDate值都是60, //static变量的用法类似全局变量,注意一定要初始化

上面两个成员函数

void Date::setDefaultDate(int dat) {//改变static变量的值 Date::defaultDate = dat; } void Date::printDefaultDate() {//显示static变量的值 std::cout<<Date::defaultDate<<std::endl; }

参考、扩展阅读:

[1] http://ticktick.blog.51cto.com/823160/194307

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值