Compartilhar via


O Visual C++ Typedefs no Designer de Classe

Instruções typedef criam uma ou mais camadas de indireção entre um nome e seu tipo subjacente.O Designer de Classe oferece suporte a tipos de typedef C++, que são declarados com a palavra-chave typedef, por exemplo:

typedef class coord
{
   void P(x,y);
   unsigned x;
   unsigned y;
} COORD;

Em seguida, você pode usar esse tipo para declarar uma instância:

COORD OriginPoint;

Embora seja possível declarar um typedef sem nome, Designer de Classe não usará o nome da marca que você especificar; ele usará o nome que Modo de Exibição de classee gera.Por exemplo, a declaração a seguir é válida, mas ele aparece no classe View e o Designer de Classe sistema autônomo um objeto chamado __unnamed:

typedef class coord
{
   void P(x,y);
   unsigned x;
   unsigned y;
};

Para obter mais informações sobre como usar o typedef Digite, consulte typedef Specifier.

Uma forma de typedef C++ tem a forma do tipo especificado a typedef.Por exemplo, se a fonte declara typedef class, a forma foi arredondado cantos e o rótulo Classe.For typedef struct, a forma tiver cantos quadrados e o rótulo Struct.

Classes e estruturas podem ter aninhados typedefs declarada dentro deles; portanto, sistema autônomo formas de classe e a estrutura podem mostrar declarações typedef aninhadas sistema autônomo formas aninhadas.

Formas de TypeDef aceitam o Mostrar sistema autônomo associação and Mostrar sistema autônomo associação de coleção comandos do menu de contexto.

Alguns exemplos de tipos de typdef o Designer de Classe oferece suporte são:

Elemento de código

Modo de exibição do designer da classe

typedef type name

nome :   type

TypeDef

Desenha uma linha de associação conectando digitar nome, se possível.

typedef void (*func)(int)

func: void (*)(int)

TypeDef

TypeDef para ponteiros de função.Nenhuma linha de associação é desenhada.

O Designer de Classe não exibe um typedef se seu tipo de fonte for um ponteiro de função.

typedef int MyInt;
class A {
   MyInt I;
};

MyInt: int

TypeDef

A

Classe

Desenha uma linha de associação apontando da forma de tipo de fonte para a forma de tipo de destino.

Class B {};

typedef B MyB;

B

Classe

MyB : B

TypeDef

Clique com o botão direito do mouse em uma forma de typedef e em Mostrar sistema autônomo associação exibe a typedef ou classe e um Alias do linha associar sistema autônomo duas formas (semelhantes a uma linha de associação).

typedef B MyB;

typedef MyB A;

MyBar : Bar

TypeDef

Mesmo que acima.

Class B {};
typedef B MyB;
class A {
   MyB B;
};

B

Classe

MyB : B

TypeDef

A

Classe

MyB é uma forma de typedef aninhados.

#include <vector>

...

using namespace std;

...

typedef vector<int> MyIntVect;

Classe vector<T>

MyIntVect : vector<int>

TypeDef

class B {};

typedef B MyB;

class A : MyB {};

MyB : B

TypeDef

-> B

B

A

Classe

-> MyB

O Designer de Classe não oferece suporte para exibir este tipo de relação usando um comando de menu de contexto.

#include <vector>

Typedef MyIntVect std::vector<int>;

Class MyVect : MyIntVect {};

std::vector<T>

Classe

MyIntVect : std::vector<int>

TypeDef

MyVect

Classe

-> MyIntVect

Consulte também

Conceitos

Trabalhando com o Visual C++ Code no Designer de Classe

Referência

typedef Specifier