vectors read operator c++ vector set undeclared-identifier

read - C++: ''set'' y ''vector'' "no declarado a pesar de las declaraciones#include



vector get c++ (3)

Estoy usando Netbeans 7.1 en Ubuntu 11.04.

La siguiente llamada

set< Triangle > V;

da el mensaje de error

error: ‘set’ was not declared in this scope

y la siguiente llamada

vector< Triangle > ans;

da el mensaje de error

error: ‘vector’ was not declared in this scope

Esto a pesar de tener

#include <vector> #include <set> #include <map>

al comienzo del archivo C ++.

A la hora de ayudar a resolver esto, sería muy apreciado.
Peter.


Ellos viven en el std nombres std . Por lo tanto, sea totalmente de calidad los tipos ( std::vector ) o use una instrucción de using namespace std; ( using namespace std; ).

La última opción contamina el espacio de nombres global. Nunca hagas eso en un archivo de cabecera (de lo contrario, todo el espacio de nombre se importa cuando incluyas el encabezado) y solo lo hagas en tu archivo de implementación si sabes que no va a causar ninguna colisión.

#include <vector> int main(...) { vector v; // no worky std::vector v; // ok! }


Los conjuntos de vectores y el mapa forman parte de la biblioteca estándar de C ++, por lo que debe llamar a vector / set / map con

std::vector< Triangle > ans;

o agregar

using namespace std;

después de las declaraciones include.


te olvidaste del espacio de nombres std:

std :: set <Triangle> V; std :: vector <Triangle> V;