Definice Typedefs jazyka Visual C++ v návrháři tříd
Definice TypeDef příkazy vytvořit jednu nebo více vrstev nepřímé odkazování mezi název a jeho základní typ.Návrhář třída podporuje C++ typedef typů, které jsou deklarovány pomocí klíčového slova typedef, například:
typedef class coord
{
void P(x,y);
unsigned x;
unsigned y;
} COORD;
Potom můžete tento typ deklarovat instance:
COORD OriginPoint;
Ačkoli můžete deklarovat definice typedef bez názvu, třída Designer nebude používat název značky, který určíte; název, který generuje zobrazení třídy bude používat.Například následující prohlášení je platné, ale v zobrazení třídy a třídy Designer jeví jako objekt s názvem __unnamed:
typedef class coord
{
void P(x,y);
unsigned x;
unsigned y;
};
Další informace o použití typedef typ, viz typedef – specifikátor.
Obrazec C++ typedef má tvar typu určeného v typedef.Například pokud zdroj prohlašuje typedef class, tvar zaoblené rohy a popisek třídy.Pro typedef struct, má obrazec popisek a hranaté rohy Struct.
Třídy a struktur může mít vnořené funkce TypeDef deklarována v rámci proto obrazce Třída a struktura můžete zobrazit vnořené definice typedef prohlášení jako vnořené obrazce.
Definice TypeDef tvary podporu Zobrazit jako přidružení a Zobrazit jako přidružení kolekce příkazy v místní nabídce.
Příklady typů typdef, které podporuje návrháře třídy jsou následující:
Prvek kódu |
Třída Návrhář zobrazení |
---|---|
typedef type name |
name : type definice typu Nakreslí přidružení propojující zadejte název, pokud je to možné. |
typedef void (*func)(int) |
func: void (*)(int) definice typu Definice TypeDef ukazatele funkce.Přidružení čára není nakreslena. Třída Návrhář nezobrazuje definice typu v případě, že její typ zdroje je ukazatel na funkci. |
|
MyInt: int definice typu A Třída Nakreslí asociační linky přejdete z obrazce Typ zdroje typ cílového obrazce. |
Class B {}; typedef B MyB; |
B Třída MyB : B definice typu Pravým tlačítkem myši na obrazec typedef a klepnutím na Zobrazit jako přidružení zobrazí definice typu nebo třídy a Alias čára spojující dva obrazce (podobné asociační linky). |
typedef B MyB; typedef MyB A; |
MyBar : Bar definice typu Stejný jako předchozí. |
|
B Třída MyB : B definice typu A Třída MyBje tvar vnořené definice typedef. |
#include <vector> ... using namespace std; ... typedef vector<int> MyIntVect; |
vector<T>Třída MyIntVect : vector<int> definice typu |
class B {}; typedef B MyB; class A : MyB {}; |
MyB : B definice typu -> B B A Třída -> MyB Návrhář třída nepodporuje tento typ relace, zobrazení pomocí příkazu místní nabídky. |
#include <vector> Typedef MyIntVect std::vector<int>; Class MyVect : MyIntVect {}; |
std::vector<T> Třída MyIntVect : std::vector<int> definice typu MyVect Třída -> MyIntVect |