El encabezado "memoria" (que probablemente se encuentre en /usr/include/c++/4.9/memory) solo incluye "unique_ptr.h" y "shared_ptr.h" (probablemente se encuentre en /usr/include/c++/4.9/ bits/unique_ptr.h y /usr/include/c++/4.9/bits/shared_ptr.h) si la macro "__cplusplus" es igual o mayor que "201103L". Compruebe memory.h para ver la condición del preprocesador "#if" allí, en la línea 69 (o busque la cadena "# if __cplusplus> = 201103L").
Como otros mencionaron, compilar con "-std = C++ 0x" o más tarde estándares de C++ (-std = C++ 11 o -std = C++ 14) resuelve los errores de compilación, pero no la indexación del eclipse y el problema de autocompletar.
Para resolver el problema de indexación de eclipse, agregué el macro de preprocesador "__cplusplus" a las propiedades de compilación del proyecto, con el valor "201103L", y luego actualicé el índice;
Para agregar la macro preprocesador:
"Haga clic derecho en el proyecto en Explorador de proyectos" >> propiedades >> C/C++ general >> >> preprocesador Incluye entradas >> GNU C++ >> CDT usuario Ajustes Entradas> > Agregar ... >> Macro de preprocesador;
A continuación, introduzca una macro con el nombre "__cplusplus" y el valor "201103L";
Después, para actualizar el índice, hacer:
"proyecto de click derecho en Explorador de proyectos" >> Índice >> Reconstrucción;
Obs .: yo estaba usando gcc 4.9.2 y Eclipse de Luna (4.4.2), en ubuntu 15.04 64bits
Conozco a alguien conoce todos los 30 pasos para hacerlo bien, pero me gustaría cambiar a kdevelop y permitir función de autocompletar;) –
¿El consejo en el último comentario sobre [este error] (https://bugs.eclipse.org/bugs/show_bug.cgi?id=314014) ayuda? No uso Eclipse, así que no puedo probarlo. –
@Als No, no funcionó, pero tanx. FYI, abrí las propiedades del proyecto-> C/C++ Build-> Discovery Options-> GCC C++ Compiler: en los argumentos de Invokation del compilador agregué -std = C++ 0x pero nada funcionó. – rahman