powered by simpleCommunicator - 2.0.56     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Обьявление переменных { get; set;} в C#
3 сообщений из 3, страница 1 из 1
Обьявление переменных { get; set;} в C#
    #38294862
stenford
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Обьясните такую вещь - в C# есть возможность кратко обьявлять поля -

Код: c#
1.
public MyClass MyField { get; set;}



я так понимаю доступа к приватной переменной типа _MyField нет? Как устанавливать теперь ее значение?

Например я хочу сделать поле readonly:

Код: c#
1.
public MyClass MyField { get;}



и назначить ее значение где-нибудь в конструкторе, как это сделать?
...
Рейтинг: 0 / 0
Обьявление переменных { get; set;} в C#
    #38294873
bazile
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stenfordв C# есть возможность кратко обьявлять поля -
Код: c#
1.
public MyClass MyField { get; set;}


Это называется свойство, а не поле. Такая форма записи называется автоматическим свойством. Она упрощает код и экономит время так не нужно писать объвлять private поле и свойство с элементарным getter-ом и setter-ом:
Код: c#
1.
2.
3.
4.
5.
public MyClass MyField
{ 
    get { return _myField; } 
    set { _myClass = value; }
}



stenfordя так понимаю доступа к приватной переменной типа _MyField нет? Как устанавливать теперь ее значение?
Присваивай самому свойству, как еще? MyField = blah-blah;

stenfordНапример я хочу сделать поле readonly:
Код: c#
1.
public MyClass MyField { get;}


и назначить ее значение где-нибудь в конструкторе, как это сделать?
Именно так сделать не получится. Авто-свойства должны иметь и get и set. Можно объявить private set или объявить private поле класса и написать свойство только с getter-ом возвращающее его значение. В первом случае ты получишь readonly свойство с точки зрения внешнего кода, во-втором есть возможность сделать readonly поле и с точки зрения класса.
...
Рейтинг: 0 / 0
Обьявление переменных { get; set;} в C#
    #38294874
Lelouch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stenford,

1) Через свойство
2)
Код: c#
1.
public MyClass MyField { get; private set; }
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Обьявление переменных { get; set;} в C#
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]