この CRTP ソリューションを機能させるには、欠落している行を何に置き換える必要がありますか?
template<class Crtp> class Base
{
public:
inline Crtp& operator=(const Base<Crtp>& rhs)
{
for (unsigned int i = 0; i < const_size; ++i) {
_data[i] = rhs._data[i];
}
return /* SOMETHING HERE BUT WHAT ? */
}
protected:
static const unsigned int const_size = 10;
double _data[const_size];
};
class Derived : public Base<Derived>
{
};
その他の質問: 提供するソリューションには、実行時にコストがかかりますか (演算子が派生クラスに直接実装されているソリューションと比較して)?
どうもありがとうございました。