什么是具有“包含”的C ++容器,操作? [英] What is a C++ container with a "contains" operation?

查看:167
本文介绍了什么是具有“包含”的C ++容器,操作?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想使用一个结构,其中我插入整数,然后可以问

I want to use a structure in which I insert integers, and then can ask

if (container.contains(3)) { /**/ }

有这样的东西。

推荐答案

您可以使用 std :: vector

std::vector<int> myVec;
myVec.push_back(3);
if (std::find(myVec.begin(), myVec.end(), 3) != myVec.end())
{
    // do your stuff
}

您甚至可以创建一个小助手函数:

You can even make a little helper function:

template <class T>
bool contains(const std::vector<T> &vec, const T &value)
{
    return std::find(vec.begin(), vec.end(), value) != vec.end();
}

以下是使用方法:

if (contains(myVec, 3)) { /*...*/ }

这篇关于什么是具有“包含”的C ++容器,操作?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆