C++该在什么时候定义构造函数
发表于:2024-11-19 作者:千家信息网编辑
千家信息网最后更新 2024年11月19日,本篇内容主要讲解"C++该在什么时候定义构造函数",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"C++该在什么时候定义构造函数"吧!C.40:如果类包含不变
千家信息网最后更新 2024年11月19日C++该在什么时候定义构造函数C.40:如果类包含不变式,则定义构造函数 Reason(原因) Example(示例) Note(注意) Note(注意) Enforcement(实施建议)
本篇内容主要讲解"C++该在什么时候定义构造函数",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"C++该在什么时候定义构造函数"吧!
这就是构造函数存在的目的。
class Date { // a Date represents a valid date
// in the January 1, 1900 to December 31, 2100 range
Date(int dd, int mm, int yy)
:d{dd}, m{mm}, y{yy}
{
if (!is_valid(d, m, y)) throw Bad_date{}; // enforce invariant
}
// ...
private:
int d, m, y;
};
在构造函数中通过Ensure表现不变式通常都是一个好主意。
为了方便起见,即使类不包含不变式也可以为类定义构造函数。
struct Rec {
string s;
int i {0};
Rec(const string& ss) : s{ss} {}
Rec(int ii) :i{ii} {}
};
Rec r1 {7};
Rec r2 {"Foo bar"};
C++11的初始化列表消除了很多构造函数存在的必要性。例如:
struct Rec2{
string s;
int i;
Rec2(const string& ss, int ii = 0) :s{ss}, i{ii} {} // redundant
};
Rec2 r1 {"Foo", 7};
Rec2 r2 {"Bar"};
Rec2的构造函数是多余的。同时成员初始化器提供的int的默认值会做得更好。
如果类包含用户定义的拷贝操作但是没有提供构造函数(用户定义的拷贝是类具有不变式的明显标志)
到此,相信大家对"C++该在什么时候定义构造函数"有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
函数
时候
C++
内容
拷贝
用户
学习
实用
明显
更深
必要
主意
兴趣
原因
同时
实用性
实际
就是
建议
必要性
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
美国博士计算机网络安全毕业薪资
求生之路租服务器
数据库表命名规则
上海官方授权经销服务器
地铁计算机网络技术是什么
云服务器如何安装安卓模拟器
用友服务器如何启用
软件开发合同纠纷咨询律师
湖北前端软件开发定制
怎么建饥荒服务器
公司服务器一般多大内存
微创光电视频监控服务器部署
深圳云尖网络技术
聊城服务器运维管理系统销售
大疆软件开发者模式
iso的网络安全体系中安全服务
数据库技术及运用学堂云答案
鸿蒙系统华为服务器推送
地理数据库命名规范
计算机网络技术文理都可学吗
网络安全常用技术分为3大类
年底软件开发跳槽
公安网络安全问题整顿方案
软件开发大专是考什么
网络技术推广服务业如何做账
adobe软件开发商
碳谱用什么数据库
安卓软件开发怎么创建xml
南京天溯软件开发有限公司
u8数据库恢复出厂