Saltar al contenido

¿Qué es un objeto escalar en C++?

Te traemos la respuesta a esta impedimento, o por lo menos eso esperamos. Si sigues con inquietudes puedes escribirlo en el apartado de comentarios y con placer te responderemos

Solución:

Version corta: Los tipos en C++ son:

  • Tipos de objetos: escalares, arreglos, clases, uniones

  • Tipos de referencia

  • Tipos de funciones

  • (Tipos de miembros) [see below]

  • void


Versión larga

  • Tipos de objetos

    • escalares

      1. aritmética (integral, flotante)

      2. punteros: T * para cualquier tipo T

      3. enumeración

      4. puntero a miembro

      5. nullptr_t

    • Matrices: T[] o T[N] para cualquier tipo completo, sin referencia T

    • Clases: class Foo o struct Bar

      1. Clases triviales

      2. agregados

      3. Clases POD

      4. (etcétera etcétera.)

    • Sindicatos: union Zip

  • Tipos de referencias: T &, T && para cualquier objeto o tipo de función libre T

  • Tipos de funciones

    • Funciones gratuitas: R foo(Arg1, Arg2, ...)

    • Funciones de los miembros: R T::foo(Arg1, Arg2, ...)

  • void

Los tipos de miembros funcionan así. Un tipo de miembro es de la forma T::U, pero no puede tener objetos o variables de tipo miembro. Solo puedes tener miembro punteros. Un puntero miembro tiene tipo T::* U, y es un puntero a objeto miembro si U es un tipo de objeto (libre) y una función de puntero a miembro si U es un tipo de función (libre).

Todos los tipos están completos excepto void, matrices sin tamaño y clases y uniones declaradas pero no definidas. Todos los tipos incompletos excepto void se puede completar

Todos los tipos pueden ser const/volatile calificado.

El header proporciona clases de rasgos para verificar cada una de estas características de tipo.

Creo que esta sería una respuesta más completa:

ingrese la descripción de la imagen aquí

documento original:
http://howardhinnant.github.io/TypeHiarchy.pdf

un escalar es un fundamental excepto que no puede ser void, pero puede ser un tipo de puntero o un tipo de enumeración.

Y un fundamental tiene una palabra clave en el idioma. es fácil de reconocer cuando se dice así.

Hay una serie de clases de biblioteca que se utilizan para probar el tipo de variables. std::is_scalar se puede usar para probar si un objeto es un escalar.

A tipo escalar es un tipo que tiene una funcionalidad integrada para el operador de suma sin sobrecargas (aritmética, puntero, puntero miembro, enumeración y std::nullptr_t).

También una tabla de aquí.

Categorías de tipos de C++

Si crees que te ha sido útil este post, sería de mucha ayuda si lo compartieras con otros programadores y nos ayudes a dar difusión a este contenido.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *