繁体   English   中英

更改成员中成员向量变量的值 function

[英]Changing the value of a member vector variable in a member function

我的 class 中有一个 function,看起来像这样:

void SomeClass::SomeFunction(int i, int j){

    float var = MemberVector[i][j];
    float temp;
    temp = var * -1;
 ~~~Some Condition~~~{
        MemberVector[i][j] = temp;
    }
}

我想获取向量成员变量中 [i][j] 处的值,并将其乘以 -1,即如果为负则为正,反之亦然。

我认为向量运算符 [] 返回对方括号内指定的值 position 的引用,但是当我运行我的代码时,它不会更改成员向量变量中的值。

有没有一种方法可以通过成员 function 中的引用来引用成员变量中 [i][j] 处的值,并按照我的描述进行更改?

如果你写类似的东西

int x = y;

那么xy的副本。 改变x不会改变y

为此,您需要一个参考,就像这样

int &x = y;
x = 42; // now y is also 42

就您而言,您甚至不需要参考。 你可以直接修改元素,

MemberVector[i][j] *= -1;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM