Partilhar via


Definições de tipo C++ Visual no Class Designer

Instruções typedef criam uma ou mais camadas de indireção entre um nome e seu tipo subjacente.O Class Designer oferece suporte a tipos de typedef de 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 você possa declarar um typedef sem nome, o Class Designer não usará o nome da marca que você especificar; ele usará o nome que gera de modo de exibição de classe.Por exemplo, a declaração a seguir é válida, mas ele aparece no modo de exibição de classe e o Class Designer como 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 Especificador de TypeDef.

Uma forma de typedef C++ tem a forma do tipo especificado na typedef.Por exemplo, se a fonte declara typedef class, a forma arredondadas cantos e o rótulo de classe.Para typedef struct, a forma tem cantos quadrados e o rótulo Struct.

Classes e estruturas podem ter definições de tipo aninhadas declaradas dentro deles; Portanto, as formas de classe e a estrutura podem mostrar declarações typedef aninhadas como formas aninhadas.

TypeDef formas de suporte a Mostrar como associação de e Mostrar como a associação da coleção comandos no menu de contexto.

Seguem alguns exemplos de tipos de typdef que o Class Designer oferece suporte:

Elemento de código

O modo de exibição de Designer de classe

typedef type name

name : type

TypeDef

Desenha uma linha de associação, conectando-se 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 Class Designer não exibe um typedef se o seu tipo de origem é 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 do tipo de destino.

Class B {};

typedef B MyB;

B

Classe

MyB : B

TypeDef

Clicando com o botão direito na forma uma typedef e clicando em Mostrar como a associação exibe o typedef ou a classe e um Alias do linha associar as 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;

vector<T>Classe

MyIntVect : vector<int>

TypeDef

class B {};

typedef B MyB;

class A : MyB {};

MyB : B

TypeDef

-> B

B

A

Classe

-> MyB

O Class Designer não oferece suporte para exibir esse tipo de relacionamento, 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

Referência

Especificador de TypeDef

Conceitos

Trabalhando com o código do Visual C++ (Designer de classe)