2011-04-25 53 views
72

¿Por qué esta línea proporciona el error Error: incomplete type is not allowed?El tipo incompleto no está permitido: stringstream

stringstream ss; 
+0

¿Qué archivos de cabecera ha incluido? –

+0

Supongo que hubo un '#include ' o algo que debería haber usado? # include # include # include # include # include # include # include # include pighead10

Respuesta

136

#include <sstream> y utilizar el nombre completo es decir std::stringstream ss;

+2

sí, pero ... ¿Cuál es la causa del error? –

+0

El error probablemente se deba a que la cadena de caracteres se define como un tipo genérico de algo indefinido. – mireazma

28

Por favor, agrega:

#include <sstream> 
+0

: D gracias que trabajaron para mí! –

5

Un tipo incompleto es cuando se tiene una visión de la declaración del tipo (por ejemplo class stringstream;), por lo que el compilador sabe que este identificador es un tipo, pero no una definición completa para él (class stringstream { ... };).

Esto podría suceder cuando haya incluido encabezados que usan el tipo, pero no el encabezado donde se define el tipo.

Cuestiones relacionadas