C++相談室 part110
■ このスレッドは過去ログ倉庫に格納されています
0547デフォルトの名無しさん
2014/02/02(日) 13:59:26.03例えばnewに限定すれば、
template <class T>
class UP : public std::unique_ptr<T> {
public:
UP(T* t) : std::unique_ptr<T>(t) { }
T* clone() {
return new T(this->operator*());
}
};
とできるが、std::unique_ptr自体をcloneしていないから名前が悪い。
cloneが意図した以外の場所で使われると(newしてるから)まずい。
よって必要ないし、あってはいけないメンバ関数だと思います。
■ このスレッドは過去ログ倉庫に格納されています