次のようなテンプレート クラスがあります。
template<T>
class MyClass
{
T* data;
}
次のように、定数型 T を持つクラスを使用したい場合があります。
MyClass<const MyObject> mci;
しかし、使用してデータを変更したいconst_cast<MyObject*>data
(理由は重要ではありませんMyClass
が、参照カウントをデータ自体に保持する参照カウントスマートポインタークラスです。MyObject
カウントを含む何らかの型から派生しています。データは変更されるべきではありませんが、 count は、スマート ポインターによって変更する必要があります)。
から const-ness を削除する方法はありT
ますか? 架空のコード:
const_cast<unconst T>(data)
?