En una línea, no hay nada en Java que sea equivalente a typedef de C++.
En Java, la clase se usa para nombrar y construir tipos o podemos decir que la clase es la función combinada de struct y typedef de C++ . Pero eso es algo totalmente diferente y no es el equivalente de typedef en ninguna parte.
typedef: es una palabra clave , no una función que se usa en lenguaje C/C++ para asignar nombres alternativos a tipos de datos existentes. Se usa con los tipos de datos definidos por el usuario cuando el nombre de los tipos de datos se complica un poco cuando se usa la palabra clave typedef , a menos que sea innecesario.
Sintaxis de uso de typedef:
typedef existing_name alias_name;
C++
// C++ program to demonstrate typedef #include <bits/stdc++.h> using namespace std; // After this line BYTE can be used // in place of unsifted char typedef unsigned char BYTE; int main() { BYTE b1, b2; b1 = 'a'; cout << b1 ; return 0; } // This code is contributed by shubhamsingh10
C
// C program to demonstrate typedef #include <stdio.h> // After this line BYTE can be used // in place of unsifted char typedef unsigned char BYTE; int main() { BYTE b1, b2; b1 = 'a'; printf("%c ", b1); return 0; }
a
typedef con punteros:
typedef también funcionará con el puntero en lenguaje C/C++ como cambiar el nombre de palabras clave existentes. En el caso de los punteros * se vincula en el lado derecho, no en el izquierdo.
int* x, y;
En la sintaxis anterior, en realidad estamos declarando x como un puntero de tipo int, mientras que y se declarará como un entero simple. Pero si usamos typedef , podemos declarar cualquier número de punteros en una sola declaración como se muestra a continuación.
typedef int* IntPtr ; IntPtr x, y, z;
typedef se puede utilizar para:
- typedef puede proporcionar un nombre simple para una conversión de tipos complicada
- typedef también se puede usar para dar nombres a tipos sin nombre. En tales casos, el typedef será el único nombre para dicho tipo
Publicación traducida automáticamente
Artículo escrito por Sabya_Samadder y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA