C++构造函数初始化字符串字段,字段有顺序要求
来源:互联网 发布:大数据人才的薪资待遇 编辑:程序博客网 时间:2024/06/05 10:34
class DCollection: public DMap<Key, CObject> {
public:
DCollection(std::string collectionName, DBClientConnection& conn,std::string dbName) :_collectionName(collectionName),_dbName(dbName),
_conn(conn) {}
private:
DCollection();
std::string _collectionName;
DBClientConnection& _conn;
std::string _dbName;
};
像这样报错:
../src/db/config/../../memory/DCollection.h:154:14: warning: ‘memory::DCollection<std::basic_string<char>, memory::DSuper>::_dbName’ will be initialized after [-Wreorder]
../src/db/config/../../memory/DCollection.h:153:22: warning: ‘mongo::DBClientConnection& memory::DCollection<std::basic_string<char>, memory::DSuper>::_conn’ [-Wreorder]
../src/db/config/../../memory/DCollection.h:33:2: warning: when initialized here [-Wreorder]
这里说的是:_dbName字段不能在_conn字段后面,说得还很明白
解法办法就是,让他们换一下顺序:
private:
DCollection();
std::string _dbName;
std::string _collectionName;
DBClientConnection& _conn;
};
这估计是c++的关于有引用方面的要求
- C++构造函数初始化字符串字段,字段有顺序要求
- 静态构造函数可以确定静态字段的初始化顺序
- Java中的构造函数与字段初始化顺序
- 构造函数 ;构造函数的执行顺序。静态字段的初始化顺序。new关键字为我们做了什么。
- 浅谈静态字段与静态构造函数之间的初始化关系以及执行顺序
- 浅谈静态字段与静态构造函数之间的初始化关系以及执行顺序
- 字段 快 构造方法 赋值顺序和字符串常量分析
- 静态构造函数可以确定静态字段的初始化顺序及引用项目和引用该项目组件的区别
- 拨云见日---浅谈静态字段与静态构造函数之间的初始化关系以及执行顺序(上)
- 拨云见日---浅谈静态字段与静态构造函数之间的初始化关系以及执行顺序(下)
- C#控制台基础 用构造函数初始化readonly字段
- 构造方法、类的初始化块以及类字段的初始化顺序
- 构造方法、类的初始化块以及类字段的初始化顺序
- Java 初始化字段方式和顺序
- C++构造函数初始化顺序
- C++构造函数初始化顺序
- C++构造函数初始化顺序
- 构造函数初始化列表顺序
- 使用keychain保存用户名和密码等敏感信息 KeychainItemWrapper和SFHFKeychainUtils。
- 深入分析Windows和Linux动态库应用异同
- DataSet DataTable DataReader dataAdapter区别 (转载)
- select,poll,epoll区别
- C#验证码类代码
- C++构造函数初始化字符串字段,字段有顺序要求
- VC++中四种进程或线程同步互斥的控制方法
- Ajax访问不断变化的session的值不同步解决方法以及HTTP协议中的GET、POST的区别
- Oracle创建删除用户、角色、表空间、导入导出、...命令总结
- CPU的等待有多久?
- __stdcall
- 一个成功的人或企业为什么没有获得持续成功:有节制的减少追求
- 数论初步之欧几里德算法
- apue 习题5.1 用setvbuf实现setbuf