2016-10-17 222 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是相同的變量,這是不好的。