Statyczne Specyfikatory klasy magazynu
Specyfikatory statyczne klasy magazynowania statyczne i extern, mogą być stosowane do obiektów i funkcje.W poniższej tabeli przedstawiono gdzie słowa kluczowe statyczne i extern może i nie może być używany.
Użycie statycznej i extern
Konstrukcja |
Można statyczne Używane? |
Można extern Używane? |
---|---|---|
Deklaracje funkcji w obrębie bloku |
Nr |
Tak |
Formalne argumenty funkcji |
Nr |
Nr |
Obiekty w bloku |
Tak |
Tak |
Obiekty poza bloku |
Tak |
Tak |
Funkcje |
Tak |
Tak |
Funkcje składowe klasy |
Tak |
Nr |
Klasa danych |
Tak |
Nr |
typedefnazwy |
Nr |
Nr |
Nazwa określona za pomocą statyczne słowa kluczowego ma wewnętrzne powiązania z wyjątkiem dla elementy statyczne klasy, które mają powiązania zewnętrznych.Oznacza to, że nie jest widoczna na zewnątrz w bieżącej jednostce tłumaczenia.Nazwa określona za pomocą extern słowa kluczowego ma powiązania zewnętrznych, chyba że uprzednio zdefiniowany jako posiadające wewnętrzne powiązania.Aby uzyskać więcej informacji na temat widoczności nazw, zobacz zakres i programu i powiązania.
[!UWAGA]
Funkcje, które zostały zgłoszone jako inline i które nie są funkcje składowe klasy otrzymują te same właściwości powiązania funkcje deklarowane jako statyczne.
Nazwa klasy, w której oświadczenie nie ma jeszcze napotykanych przez kompilator, mogą być używane w extern deklaracji.Nie można użyć nazwy, wprowadzone z takiej deklaracji, dopóki napotkał deklaracji klasy.