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. |
|
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. |
|
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