Ватсон Карли
Шрифт:
Для C++ можно сделать следующую запись:
В то время как в C# необходимо выполнить такие действия:
Свойства
Свойства не имеют эквивалента в ANSI C++, хотя они были введены как расширение в Microsoft Visual C++. Свойство является методом или парой методов, которые синтаксически оформлены для представления в вызывающем коде, как будто свойство является полем. Они существуют для ситуации, когда интуитивно удобнее вызывать метод с помощью синтаксиса поля, очевидным примером будет случай закрытого поля, которое должно быта инкапсулировано с помощью оболочки из открытых методов доступа. Предположим, что класс имеет такое поле
В C# можно реализовать эти методы, как аксессоры (методы доступа)
Чтобы определись эти методы доступа, свойство будет определяться следующим образом:
Хотя методы доступа
Можно опустить любой из методов доступе
Операторы
Значение и синтаксис операторов в большинстве случаев те же в C#, что и в C++. Следующие операторы по умолчанию имеют в C# такое же значение и синтаксис как и в C++:
□ Бинарные арифметические операторы
□ Соответствующие арифметические операторы присваивания
□ Унарные операторы
□ Операторы сравнения
□ Операторы сдвига
□ Логические операторы
□ Операторы присваивания, соответствующие логическим операторам:
□ Тернарный (условный) оператор
Символы
,Необходимо быть осторожным со следующими операторами, так как они действуют в C# иначе, чем в C++:
□ Присваивание (
Оператор разрешения области видимости в C# представлен