Solo estoy tratando de verificar si el compilador permite el nombre del tipo como nombre de la variable. Cuando he intentado¿Por qué se permite la cadena de caracteres y el compilador no permite int int?
int int;
Se informa de un error diciendo
C2632 de error: 'int' seguido de 'int' es ilegal
Pero cuando he intentado
#include <string>
using namespace std;
int main()
{
string string;
}
No dio ningún error. Ambos string
y int
son tipos de datos.
¿Por qué el compilador permite string
y no permite int
?
EDITAR: incluye actualización.
EDITAR: Algunas personas dicen que int no es una clase. En ese caso, ¿por qué se permite la línea inferior?
int a(10);
funciona similar al constructor de una clase.
¿Cuáles son sus incluye? –
Dejaré que las personas con más experiencia con el estándar respondan a esta, pero esencialmente, 'int' es una palabra clave, mientras' string' es una clase. –
Desafortunadamente, como esto es tarea, no veo cómo puedo ayudar sin dar la respuesta. Dicho esto, creo que cualquier instructor que asigne un problema como este necesita aprender una lección sobre problemas razonables para aquellos de nosotros que no somos abogados de idiomas. –