BadCats
@BadCats

Псевдонимы(алиасы) в перечисления — правила использования (c#)?

Всем привет! Сейчас изучаю перечисления в c# и хотел спросить, почему в с# можно использовать псевдоним для любого целого типа данных

(byte, sbyte, short, ushort, int, uint, long, ulong) , но нельзя

использовать любой системный целый тип данных C# (Byte, SByte, Int16, UInt16, Int32, UInt32, Int64, UInt64) ?

Когда я смотрел видео урок, то там был такой пример-объяснение: "Представте себе ситуацию в которой возможно, Вы захотите отказаться от Framework-ов предоставляемых Microsoft в языке c# и отключите импорт всех библиотек и в том числе импорт библиотеки System, и решите создавать свои типы. Вы ведь можете создавать свои типы? Конечно же да, но при этом у вас должны остаться простейшие типы данных. Так вот, простейшие типы даннных(даже при отключенной библиотеке System) у вас все же останутся, но в виде алиасов, а не в виде полноценной структуры (например byte) которая входит в пространство имен System. ". Почему при таком подробном описании ситуации я это все спрашиваю? Дело в том, что далее по уроку автор уделил теме алиасов еще некоторое время (а сам автор страдает забывчивостью сказать что то важное и иногда к сожалению обладает некоторой степенью недосказанности по некоторым вопросам)

Вот в чем мой вопрос: Есть ли еще причины (помимо вышеприведенного примера) почему в перечислениях используют алиасы(псевдонимы)?
  • Вопрос задан
  • 447 просмотров
Пригласить эксперта
Ответы на вопрос 1
@dmitryKovalskiy
программист средней руки
Читаю и думаю о бреде сумасшедшего, скурившего суровый косяк и взявшего в руки книжку по программированию.
но нельзя использовать любой системный целый тип данных C# (Byte, SByte, Int16, UInt16, Int32, UInt32, Int64, UInt64) ?

Чей та? Берите да пользуйте. Или вы хотите использовать эти слова как значения для enum типа?
(byte, sbyte, short, ushort, int, uint, long, ulong)

Это не типы. Это alias для типов из первой цитаты. Пространство имен System и все такое.

Переформулируйте как-нибудь вопрос, потому что понять эту кашу лично мне крайне трудно. Вкратце - 1)что вы хотите сделать, 2) Что вам мешает.

UPD: aee052c5df4c4389b80f3d4e0954bf29.PNG
Мне почему-то никто не мешает написать так как вы показали. Все билдится прекрасно
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы