編譯器警告 (層級 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
}
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應