c++模板中set(date st):t(st)中的:符号
2024-09-06 19:15:39
转载:https://zhidao.baidu.com/question/618119741512344012.html
半角冒号是构造函数里的初bai始化列表 开始du的标识。
如楼上所述:
set(date st):t(st){}; //这时定义在类里面,dao如果定义在外面,前面还会有个 set::
//等价与
set(data st)
{
t = st;
}
区别在于,第二种形式 t会多执行一步默认构造函数构造t(因为初始化列表为空,你没写),再在构造函数体语句块中 调用赋值操作符给t再赋一次值。
另外,对于一些特殊情况必须写在初始化列表里,如引用型属性的初始化。因为那才是初始化,语句块中的是初始化后的再赋值。
最新文章
- 基于window7+caffe实现图像艺术风格转换style-transfer
- CloudNotes之领域建模篇:领域模型简介
- Mysql 建立索引
- 完成对数据库的CRUD操作
- 基本select语句的生命周期
- Linux命令之md5sum
- 斯坦福第十三课:聚类(Clustering)
- ContentControl 与 ViewModel (一)
- ListView添加项目带序列
- poj 1062 昂贵的聘礼(最短路 dijk+枚举)
- #include <;amp.h>;
- android Activity之间数据传递 Parcelable和Serializable接口的使用
- 【spring源代码分析】--Bean的解析与注冊
- MVC 分页1 标准的url分页
- 谈谈一些有趣的CSS题目(十三)-- 巧妙地制作背景色渐变动画!
- Nginx记录-Nginx基础(转载)
- linux每日命令(6):rm命令
- CNN autoencoder 先降维再使用kmeans进行图像聚类 是不是也可以降维以后进行iforest处理?
- 相对和绝对路径 mkdir cd rm 等命令
- ringojs 使用rp 包管理web 应用依赖