私はこのようなテンプレートクラスを持っている:(テンプレートのconst_cast非コンストモディファイアはありますか?
MyClass<const MyObject> mci;
を私はconst_cast<MyObject*>data
を使用してデータを変更したい:
template<T>
class MyClass
{
T* data;
}
は時々、私は次のように一定のタイプTを持つクラスを使いたいですなぜMyClass
がデータ自体に参照カウントを保持する参照カウントスマートポインタクラスであるかは重要ではありません データは変更すべきではありませんが、スマートポインタ。 )。
T
からconst-nessを削除する方法はありますか?架空のコード:
const_cast<unconst T>(data)
?
remove_constが私にどのように作用するかを説明してくれてありがとう。 – danatel
@danatel:あなたは本当にremove_constを使いたくありません。const値をキャストしてconst値を変更することは、未定義の動作です。 refcount変数に__mutable__を使いたいとします。 –
:-)私は変更可能です。私は自分の問題を解決する必要はありませんでした。問題はイラストのようにそこにありました(オリジナルの記事を読んでください) - 一定性を取り除く方法があるのか不思議でした。 – danatel