【发布时间】:2016-04-27 10:09:17
【问题描述】:
假设我在 C++ 中有一个向量 v = ('a','e','i','o','u')。我想通过简单地检查字符是否在向量 v 中来检查字符串是否为元音。我不想要任何代码,因为我自己知道,我正在寻找 C++ 中的函数或关键字,它相当于 python 中的以下内容:
list = ['a', 'e', 'i', 'o', 'u']
if str in list:
#do stuff
PS:如果不存在与此等价的东西,也请告诉我。
【问题讨论】:
-
@SamiKuhmonen :对于这种特殊情况,
std::set比std::vector更适合 -
@vsz 对于这种特殊情况,我会使用
std::string。 -
@vsz 当然,它可能不是最好的数据结构,但问题谈到了向量。
-
std::find_first_of(str.begin(), str.end(), v.begin(), v.end()) != str.end()