我通过引用正确地传递和访问矢量吗?

时间:2017-05-04 08:24:10

标签: c++ sfml

你好,我对C ++还是一个新手,更多的是SFML。我想知道在这个特定于矢量的例子中我是否可以通过值/参考未命中匹配传递。 以下似乎不起作用,我不知道为什么。

道歉,如果一个简单的例子,基于这里的内容。 id而不是粘贴项目代码的任何其他功能,因为它可能使我的查询更难理解。

-----类范围全局变量,以前都在类构造函数中初始化,没有问题

string t1Path, t2Path, t3Path, t4Path, t5Path;
vector<string> texturePaths = {t1Path, t2Path, t3Path, t4Path, t5Path};
sf::Texture t1, t2, t3, t4, t5;
vector<sf::Texture> textures = {t1, t2, t3, t4, t5};

//更新不起作用

void updateTexturePaths(vector<string>& tPathsRef) {    
   // or this ?   texturePaths = tPathsRef;
   for (size_t i = 0; i < textures.size(); i++) {
      texturePaths[i] = tPathsRef[i];
   }
}

playerPtr->updateTexturePaths(playerPtr->idlingRSpritePaths);

但如果我在功能外部执行此操作,并且不使用/调用它可以正常工作的功能,我是否根据此处的代码不理解某些内容?

playerPtr->t1Path = playerPtr->idlingRSpritePaths[0];
playerPtr->t2Path = playerPtr->idlingRSpritePaths[1];
playerPtr->t3Path = playerPtr->idlingRSpritePaths[2];
playerPtr->t4Path = playerPtr->idlingRSpritePaths[3];
playerPtr->t5Path = playerPtr->idlingRSpritePaths[4];

非常感谢,如果有人试图回答这个问题。

0 个答案:

没有答案