0
我遇到一个错误,因为主题为assignment of data-member ‘RootBoxT<CORE::DoubleWrapper>::innerBox_’ in read-only structure
。我“可能”知道为什么会发生这种情况,但我需要更多地了解这些规则。错误:以只读结构分配数据成员'RootBoxT <CoreE :: DoubleWrapper> :: innerBox_'
我提出的所有实例为RootBoxT
如const
,和成员变量RootBoxT
类的*innerBox_
也const
类型。在RootBoxT
类的其中一种方法中,我需要更新*innerBox_
,所以我调用delete
来释放innerBox_
的内存,并为它分配另一个const指针。
我的问题是:
- 这是正确的方法,当我需要更新一个const指针的值,我只是删除它,并与其他常量指针分配呢?
- 这个错误是由于
RootBoxT
的实例是const
这个事实造成的,但是其中一个方法改变了成员变量指向的位置?如果不是,为什么会发生?如果是这样,我应该只是将这些实例更改为非常量?
我真的搞错了const
关键字为我目前的项目,因为我是新的C++。谢谢。
你不能*更新'const'对象的值*。 'const'意味着你不能改变它。此外,你最好发布你的代码,因为你在谈论const指针或指向const对象的指针并不清楚。 –