共用方式為


編譯器警告 (層級 1) C4288

使用的非標準延伸模組: 'var' : for-loop 中宣告的迴圈控制變數是在 for-loop 範圍之外使用;它與外部範圍中的宣告衝突

使用 /Ze /Zc:forscope- 編譯時,會在 for-loop 範圍之後使用迴圈中 for 宣告的 變數。 C++ 語言的 Microsoft 延伸模組可讓此變數保留在範圍內,而 C4288 提醒您,不會使用變數的第一個宣告。

如需如何使用 /Ze 在迴圈中 for 指定 Microsoft 擴充功能的相關資訊,請參閱 /Zc:forScope

下列範例會產生 C4288:

// C4288.cpp
// compile with: /W1 /c /Zc:forScope-
int main() {
   int i = 0;    // not used in this program
   for (int i = 0 ; ; ) ;
   i++;   // C4288 using for-loop declaration of i
}