Net framework 5, а также среды Visual Studio 2012 и C#


Закрытый (приватный) доступ



Download 6,27 Mb.
Pdf ko'rish
bet34/658
Sana12.06.2023
Hajmi6,27 Mb.
#950840
1   ...   30   31   32   33   34   35   36   37   ...   658
Bog'liq
CLR via C Programmirovanie na platforme Microsoft NET Framework 4 5 na yazyke C

Закрытый (приватный) доступ
— член типа доступен только для других членов 
того же типа.
‰
Доступ в семействе
— член типа доступен для производных типов независимо 
от того, принадлежат ли они той же сборке или нет. Обратите внимание: во мно-
гих языках (таких, как C# и C++) доступ в семействе обозначается ключевым 
словом 
protected
.
‰
Доступ в семействе и сборке
— член типа доступен для производных типов, но 
только в том случае, если они определяются в той же сборке. Многие языки (на-
пример, C# и Visual Basic) не поддерживают этот уровень доступа. Разумеется, 
в IL-коде он поддерживается.
‰
Доступ в сборке
— член типа доступен для любого кода, входящего в ту же сбор-
ку. Во многих языках доступ в сборке обозначается ключевым словом 
internal
.
‰
Доступ в семействе или сборке
— член типа доступен для производных типов 
из любой сборки, а также для любых типов в той же сборке. В C# этот вариант 
доступа обозначается ключевыми словами 
protected internal
.
‰
Открытый доступ
— член типа доступен для любого кода в любой сборке.
Кроме того, CTS определяет правила, управляющие наследованием, работой 
виртуальных методов, сроком жизни объектов и т. д. Эти правила разрабатывались 
для выражения семантики, выражаемой средствами современных языков програм-
мирования. Собственно, вам вообще не придется изучать правила CTS как таковые, 
потому что выбранный вами язык предоставляет собственный синтаксис и правила 
работы с типами. Синтаксис конкретного языка преобразуется в IL, «язык» CLR, 
в процессе генерирования сборки на стадии компиляции.
Когда я только начал работать с CLR, довольно быстро выяснилось, что язык 
и поведение кода лучше рассматривать как две разные сущности. Используя C++/
CLI, вы можете определять собственные типы с нужным набором членов. Конечно, 
для определения того же типа с теми же членами можно также использовать C# 
или Visual Basic. Конечно, синтаксис определения типа зависит от выбранного 
языка, но поведение типа остается неизменным, потому что оно определяется 
спецификацией CTS.
Чтобы сказанное стало более понятным, я приведу пример. CTS позволяет типу 
быть производным только от одного базового класса. И хотя язык C++ поддержи-
вает возможность наследования от нескольких базовых типов, CTS не примет такие 
классы и не будет работать с ними. Обнаружив попытку создания управляемого 
кода с типом, производным от нескольких базовых типов, компилятор Microsoft 
C++/CLI выдает сообщение об ошибке.


52
Download 6,27 Mb.

Do'stlaringiz bilan baham:
1   ...   30   31   32   33   34   35   36   37   ...   658




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish