我正在尝试将一个数组移动到另一个数组(用于初始化我的数据结构)。
我的代码:
void MonitorModule::setParameters(const std::array<std::string, IMonitorModule::MAX_CONTENT> ¶meters) const {
this->_parameters = parameters;
}
// Inside the structure "MonitorModule" as private
std::array<std::string, IMonitorModule::MAX_CONTENT> _parameters;
这将返回以下错误:
error: no viable overloaded '='
如何移动两个 std::array ?
谢谢。
最佳答案
setParameters()
被限定为 const
,这意味着它只能在 const MonitorModule
对象上调用,因此它的 _parameters
成员无法修改。这就是为什么编译器无法找到合适的 operator=
来将另一个数组分配给 _parameters
。
您需要从 setParameters()
的声明中删除 const
限定符。
关于c++ - 将 std::array 移动到另一个 std::array,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60015236/