C++相談室 part77
■ このスレッドは過去ログ倉庫に格納されています
0423420
2010/02/05(金) 14:34:30ありがとうございます。
template<typename T>
class MyTemplateClass
{
T num;
public :
MyTemplateClass(T n = 0) : num(n) {}
MyTemplateClass(const MyTemplateClass& other) : num(other.num) {}
~MyTemplateClass(){};
MyTemplateClass& operator=(const MyTemplateClass& rhs){num=rhs.num;return *this;}
MyTemplateClass& operator=(const T& rhs){num=rhs;return *this;}
};
例えばこんなクラステンプレートだとしますと、
Tのメンバ関数operator=が例外を投げるような代物であった場合、
MyTemplateClass::operator=(const T& rhs)
MyTemplateClass::operator=(const MyTemplateClass& rhs)
は両方ともこのままでは例外非安全ということでしょうか?
■ このスレッドは過去ログ倉庫に格納されています