Udostępnij za pośrednictwem


Visual C++ definicje TypeDef, w konstruktorze klasy

Element TypeDef sprawozdaniu utworzyć jedną lub więcej warstw pośrednia między nazwą jego typ podstawowy.Projektant klasy obsługuje typy typedef języka C++, które są zadeklarowane za pomocą słowa kluczowego typedef, na przykład:

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

Tego typu można użyć, aby zadeklarować wystąpienie:

COORD OriginPoint;

Chociaż można zadeklarować jako element typedef bez nazwy, klasa Designer nie użyje nazwy znacznika określ; zastosuje on nazwę, która generuje widoku klasy.Na przykład, następujące oświadczenie jest prawidłowy, ale wydaje się w widoku klasy i Projektant klasy jako obiektu o nazwie __unnamed:

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

Aby uzyskać więcej informacji na temat za pomocą typedef typu, zobacz element TypeDef specyfikatora.

Kształt element typedef języka C++ ma kształt typ określony w typedef.Na przykład, jeśli deklaruje źródła typedef class, kształt ma zaokrąglone narożniki i etykieta klasy.Dla typedef struct, kształt ma narożniki i etykieta Struct.

Klasy i struktur mogą mieć zagnieżdżone definicje TypeDef zadeklarowana wewnątrz nich; w związku z tym kształty klas i struktury można pokazać deklaracje zagnieżdżonych typedef jako zagnieżdżony kształtów.

Element TypeDef kształtów wsparcie Pokaż jako skojarzenie i Pokaż jako kolekcja stowarzyszenia poleceń z menu kontekstowego.

Oto niektóre przykłady typów typdef, które obsługuje Projektant klasy:

Element kodu

Klasa projektanta widoku

typedef type name

name : type

element TypeDef

Rysuje linię stowarzyszenia nawiązywanie połączeń typu Nazwa, jeśli jest to możliwe.

typedef void (*func)(int)

func: void (*)(int)

element TypeDef

Element TypeDef dla wskaźników funkcji.Jest rysowana linia nie skojarzenia.

Projektant klasy nie jest wyświetlany jako element typedef, jeśli jego typ źródła jest wskaźnik funkcji.

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

MyInt: int

element TypeDef

A

Klasa

Rysuje linia skojarzenia, wskazując od kształtu typu źródłowego kształtu Typ docelowy.

Class B {};

typedef B MyB;

B

Klasa

MyB : B

element TypeDef

Prawym przyciskiem myszy kształt element typedef, a następnie klikając polecenie Pokaż jako skojarzenie Wyświetla typedef lub klasy i Alias linię łączącą dwa kształty (podobnie jak linia skojarzenia).

typedef B MyB;

typedef MyB A;

MyBar : Bar

element TypeDef

Takie samo jak powyżej.

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

B

Klasa

MyB : B

element TypeDef

A

Klasa

MyBjest kształt typedef zagnieżdżone.

#include <vector>

...

using namespace std;

...

typedef vector<int> MyIntVect;

vector<T>Klasa

MyIntVect : vector<int>

element TypeDef

class B {};

typedef B MyB;

class A : MyB {};

MyB : B

element TypeDef

-> B

B

A

Klasa

-> MyB

Klasa Designer nie obsługuje wyświetlania tego rodzaju relacji przy użyciu polecenia menu kontekstowego.

#include <vector>

Typedef MyIntVect std::vector<int>;

Class MyVect : MyIntVect {};

std::vector<T>

Klasa

MyIntVect : std::vector<int>

element TypeDef

MyVect

Klasa

-> MyIntVect

Zobacz też

Informacje

element TypeDef specyfikatora

Koncepcje

Praca z Visual C++ kod (Projektant klasy)