2011-11-12 16 views
1
vector<string> grid(); 

for(int i = 0; i < 7; i++) 
{ 
    string hello(10, '.'); 
    grid.push_back(hello); 
} 

vector<int> newVec(grid.size(), 0); 

for(int i = 0; i < grid.size(); i++) 
{ 
    if(grid[0][i] = '.') 
      newVec[i] == 1; 
} 

你会期望newVec现在将其所有元素都等于1.但是我一直都是0。任何帮助?为什么我的矢量不能按预期进行初始化?

+0

此代码编译? “'this'”是一个关键字。 – Mysticial

+0

对不起,改变了。仍然不起作用。 – user1038665

+0

此外,您的循环似乎只将第一个7设置为1. – user1012037

回答

8

至少有两件事情是错误的:

  • 你可能想if(grid[0][i] = '.')if(grid[0][i] == '.')。但这不是问题的原因。
  • 你想要newVec[i] == 1;newVec[i] = 1;。这就是为什么newVec中的元素没有将其值设置为1的原因。
+0

+1并删除了我的,很好的工作发现情况下的任务! – avakar