为什么没有报告所有变量的"未使用的变量"警告?

Jac*_*ieg 6 c++ gcc c++11 unused-variables

我有这个代码:

// initializer lists
#include <iostream>
#include <vector>

int main()
{
    int values[] { 1, 2, 3 };

    std::vector<int> v { 4, 5, 6 };

    std::vector<std::string> cities {
        "London", "New York", "Paris", "Tokio"
    };

    return 0;
}
Run Code Online (Sandbox Code Playgroud)

但是gcc编译器unused variable只给出了values数组警告.为什么vcities没有报道?

Mar*_* A. 3

它不是原始值,因此它的构造函数和/或析构函数可能具有所需的副作用。

经典示例:一个Timer 对象,用于测量其构造和销毁之间的时间:/sf/answers/371200791/

  • 或者一个作用域锁对象。 (5认同)