gpt4 book ai didi

c++ - C++ 类 Java Arrays.asList()

转载 作者:行者123 更新时间:2023-11-30 01:59:45 25 4
gpt4 key购买 nike

C++ 是否在 STL 中支持或存在支持 Arrays.asList() 的外部库? ?

典型用法

private ArrayList<String> lexeme = new ArrayList<String>(Arrays.asList(" ", ",", "(", ")", ";", "=", ".", "*", "-"));

我使用的是 Visual Studio 11 (2012),它们没有包含 c++11 功能 Initializer lists 让我在初始化一个包含九个唯一字符串的 vector 时不知所措

std::vector<std::string>::push_back("a");
std::vector<std::string>::push_back("b");
std::vector<std::string>::push_back("c");
. . .

最佳答案

在 C++11 之前通常要做的事情是首先创建一个数组,然后用它初始化 vector ,例如:

char const * arr[] = { " ", ",", "(", ")", ";", "=", ".", "*", "-" };
std::vector<std::string> str_vec(arr, arr + sizeof(arr) / sizeof(*arr));

当然,VS11 确实支持一些 C++11,所以你可以这样做,这样可读性稍强:

char const * arr[] = { " ", ",", "(", ")", ";", "=", ".", "*", "-" };
std::vector<std::string> str_vec(std::begin(arr), std::end(arr));

关于c++ - C++ 类 Java Arrays.asList(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15885858/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com