編譯器警告 (層級 3 和層級 4) C4189

'identifier':已初始化區域變數,但並未參考

變數已宣告並初始化,但未使用。

範例

下列範例會產生 C4189:

// C4189.cpp
// compile with: /W4
int main() {
   int a = 1;   // C4189
}

在 Visual Studio 2017 版本 15.5 和更新版本中,有更多情況會發出警告 C4189,如下列程式碼所示:

void f() {
    char s[2] = {0}; // C4189
}

若要修正錯誤,請移除未使用的變數或新增 [[maybe_unused]] 屬性。