2016-10-17 152 views
0
BYTE Function::Function(long MyInt) 
{ 
    std::vector<int> Red = { 6, 8 }; 

    for (MyInt : Red) 
    { 
     return 1; 
    } 

    return 0; 
} 

这是我的功能。我想使用MyInt介绍范围,但我得到一个奇怪的错误。基于范围的循环声明必须声明变量

我得到这个错误; 错误:对于范围

declaration must declare a variable 

这里有什么问题?我无法理解。

+1

请解释你的功能应该做什么 –

+0

请注意,BYTE不是标准类型。总而言之,看起来你应该首先获得一本关于C++的好书。 –

+0

'(MyInt:Red)'你对此有何看法? – GManNickG

回答

2

你想做什么?这对我没有意义,为什么你会开始一个循环来立即通过返回来结束它?

嗯,你不能使用现有变量的范围for循环,你必须声明一个新问题:

for (long myint : Red) 
{ 
    //... 
} 

您也可以使用相同的名称for (long MyInt : Red),但可以迷惑人认为MyIntMyInt是相同的变量,这是不好的。