我正在创建自己的矩阵类。当谈到用于更改某个元素的值的“at”函数时,我有这个。
T & at(unsigned int raw, unsigned int col)
{
return (_matrix.at(index(raw, col)));
}
Run Code Online (Sandbox Code Playgroud)
知道
std::vector<T> _matrix;
Run Code Online (Sandbox Code Playgroud)
它适用于所有类型的布尔值。我无法执行此操作。
matrix.at(1, 1) = true;
Run Code Online (Sandbox Code Playgroud)
这很奇怪,因为我的实现与 std::vector "at" 函数相同,它适用于布尔值。
有任何想法吗 ?谢谢。