Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Теория языков программирования и методы трансляции.-1.pdf
Скачиваний:
21
Добавлен:
05.02.2023
Размер:
1.63 Mб
Скачать

15

Также в языке C++ конфликтной является ситуация, когда имя экзем-

пляра или типа, вложенного в структуру, совпадает с именем этой структуры: struct a {

int a;

};

Причина в том, что в классе или структуре с именем X только один член может иметь имя X – это конструктор.

Также при описании структуры можно использовать модификаторы доступа (public, protected и private), но добавлять их в синтаксис не обязательно.

2.1.2.3 Язык C#

В языке C# описание структуры может предваряться модификатором доступа. Если структура описана глобально, то доступны два модификатора – public и internal. Если структура вложенная, то еще модификатор private:

public struct a { private struct b {

...

}

}

struct c {

...

}

Если модификатор доступа опущен, то по умолчанию предполагается самый строгий модификатор (internal для глобальных и private для вложенных структур соответственно). Также, кроме вложенных структур,

структура может содержать поля – это описание переменных любого типа

(подобно примеру из п. 2.1.1.3). Глобальное описание переменных запреще-