Avatar ·

Cómo verificar si un elemento está en std::set en C++?

¡Hola a todos! Recientemente empecé a aprender C++ y me encontré con este problema: necesito verificar si un valor específico está en el contenedor `std::set`. Sé que `std::set` almacena elementos únicos en orden ascendente, pero no entiendo cómo verificar correctamente la presencia de un elemento. Por ejemplo, tengo este código: ```cpp #include #include int main() { std::set numbers = {10, 20, 30, 40, 50}; int value = 30; // ¿Cómo verificar si value está en numbers? // Intenté numbers.contains(value), pero el compilador se queja. return 0; } ``` He oído que en C++20 apareció el método `contains`, pero mi compilador no lo soporta (uso C++17). Intenté usar `find`, pero no entiendo bien cómo comparar el iterator. ¿Quizás hay una forma más simple? Por favor, indíquenme cómo hacerlo correctamente y expliquen la diferencia entre los métodos. ¡Gracias de antemano!