|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
21.04.2010, 00:30 | #1 |
Пользователь
Регистрация: 02.09.2009
Сообщений: 56
|
ReadOnly и Const
Читаю msdn и возник вопрос.
while a const field is a compile-time constant, the readonly field can be used for runtime constants as in the following example: Код:
|
21.04.2010, 01:00 | #2 |
Форумчанин
Регистрация: 02.07.2009
Сообщений: 722
|
в шарпе очень много описанно про стат константы
если в двух словах, то примерно так: есть клас скажем а в нем есть статическая константа b a a1= new a(); a a2 = new a(); a.b=2; то b изменится и для а1 и для а2 В отличии от обычных перменных класса думаю понятно? |
21.04.2010, 01:14 | #3 |
Пользователь
Регистрация: 02.09.2009
Сообщений: 56
|
Я конечно понимаю, что константа обладает статическими свойствами и чтобы получить к ней доступ или изменить достаточно написать имя класса и поставить имя константы. Но я хотела узнать немного другое. Чем отличается константа времени компилирования (const) и константа времени выполнения программы(readonly). Как понять констаната времени выполнения?? Она же ведь не создается во время выполнения программы?7 Можете навести пример, пожалуйста.
|
21.04.2010, 11:53 | #5 |
Форумчанин
Регистрация: 24.03.2010
Сообщений: 349
|
Как понимаю я:
const - устанавливается при компиляции a readonly - в процессе выполнения программы
Нет нерешаемых задач - есть недостаток времени и данных!
|
21.04.2010, 21:24 | #6 | |
Пользователь
Регистрация: 02.09.2009
Сообщений: 56
|
Цитата:
мы ведь пишем поле, например, const string = "Hello", то как компилятор считывает это все?? И как это константа устанавливается во время выполнения программы? Просто я поняла приблизительно так. Например, у нас есть высота и сторона треугольника и есть константа readonly, которая означает площадь треугольника. Если мы этой константе поставим в соответствие формулу, а не какое-то значение, то константа будет устанавливаться во время выполнения программы, после того как будет посчитана формула. Правильно я хоть понимаю?? Просто хочу выучить все, чтобы не просто иметь сухие знания, но еще и использовать их где-то. |
|
22.04.2010, 08:10 | #7 |
Форумчанин
Регистрация: 24.03.2010
Сообщений: 349
|
Значение const устанавливаем явно в программе:
Код:
Код:
Нет нерешаемых задач - есть недостаток времени и данных!
|
23.04.2010, 14:48 | #8 |
Участник клуба
Регистрация: 03.05.2007
Сообщений: 1,189
|
Типо заключение к теме.
Поля ReadOnly отличаются от Const по сути одной особенностью. Она заключается в том, что ей можно задать значение в конструкторе класса, где она объявлена. Т.е. можно произвести некий расчет, присвоить значение переменной и использовать как константу. Последний раз редактировалось Hollander; 23.04.2010 в 14:51. |
23.04.2010, 16:32 | #9 | |
Форумчанин
Регистрация: 24.03.2010
Сообщений: 349
|
Цитата:
а всего лишь переменная, доступная только для чтения но Вам, Pti44ka, лучше не париться по этому поводу (слишком глубоко придётся лезть в дебри)
Нет нерешаемых задач - есть недостаток времени и данных!
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Cоздать array of const | freetonik | Общие вопросы Delphi | 5 | 28.11.2009 16:59 |
TextBox(readonly) | Chartvit | Общие вопросы C/C++ | 1 | 21.11.2009 22:36 |
изменение const | zander | Microsoft Office Excel | 1 | 13.05.2009 09:12 |
Квалификатор const | Locode | Общие вопросы C/C++ | 1 | 26.03.2009 19:37 |