8

我有这个代码:

// 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;
}

但是gcc编译器unused variable只给我警告values数组。为什么vcities不被报道?

4

1 回答 1

3

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

经典示例:一个Timer 对象,用于测量其构造和销毁之间的时间:https ://stackoverflow.com/a/5302868/1938163

于 2014-03-01T09:58:55.127 回答