您的位置:首页 > Web前端

effective-1

2015-10-18 15:17 288 查看
如果打算在一个内含 reference成员 或者 const 成员的class内支持assignment,你必须自己定义copy assignment操作符,

#include <iostream>
#include <string>

using namespace std;

template<typename T>
class Base
{
public:
Base(const string name, const T& value) :m_name(name), objectvalue(value){};

virtual ~Base(){};
private:
string &m_name;
const T objectvalue;
};

int main()
{
string new1("wang");
string old1("huai");

Base<int> ba1(new1, 2);
Base<int> ba2(old1, 3);
//error
ba1 = ba2;
return 0;
}


对于析构函数

许多人的心得是,只有当class类至少含有一个virtual函数时,才为它声明virtual析构函数

2、资源获取即是初始化(RAII)

当我们获取到资源时,要立即同时放进对象中,进行管理。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: