![]() |
|
Модераторы: Partizan, gambit |
![]()
|
|
| STRELOKBMSTU |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 138 Регистрация: 11.8.2007 Где: Russia.MR.Moscow( ); Репутация: нет Всего: нет |
Можно ли переменной импа int задать значение null? Если можно, то как это сделать?
|
|||
|
||||
| HalkaR |
|
|||
![]() Пуфыстый назгул ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2132 Регистрация: 8.12.2002 Где: В Москве Репутация: 5 Всего: 42 |
Нет. Но специально для решения данной проблемы в .Net есть тип Nullable. Т.е. в вашем случае это выглядит так
|
|||
|
||||
| SpaceSpace |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 366 Регистрация: 10.4.2007 Где: Самара Репутация: нет Всего: 10 |
теоретически, просто происходит упаковка значимого типа, но не в object, а в класс Nullable,
т.е. int? перестает быть значимым, становится ссылочным и храниться соответсвеннон не в стеке , а в куче Это сообщение отредактировал(а) SpaceSpace - 3.9.2007, 09:33 -------------------- Репутация - самое ценное, что есть у человека. Зарабатывают годы, теряют за мгновение. 70-565 MCPD Enterprise 3.5 |
|||
|
||||
| HalkaR |
|
||||
![]() Пуфыстый назгул ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2132 Регистрация: 8.12.2002 Где: В Москве Репутация: 5 Всего: 42 |
Вот исходник типа Nullable:
Это -структура, т.е. value тип, так что никакой упаковки не происходит. |
||||
|
|||||
| SpaceSpace |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 366 Регистрация: 10.4.2007 Где: Самара Репутация: нет Всего: 10 |
HalkaR
очень убедительный аргумент, НО
не напоминают ли тебе эти оверрайды object ? если сможешь меня переубедить - дам по репе кста, структуры - не всегда в стэке храняться, у них ограничение на максимальный размер и вообще, чтобы дженерики были value -- это нонсенс или у меня настолько сильные пробелы в теории? Это сообщение отредактировал(а) SpaceSpace - 3.9.2007, 10:04 -------------------- Репутация - самое ценное, что есть у человека. Зарабатывают годы, теряют за мгновение. 70-565 MCPD Enterprise 3.5 |
|||
|
||||
| QryStaL |
|
|||
![]() Intellectual feast ![]() ![]() Профиль Группа: Участник Сообщений: 914 Регистрация: 30.11.2005 Репутация: 10 Всего: 32 |
Ну, все правильно. Структуры неявно наследуются от System.ValueType, а тот в свою очередь от System.Object. Поэтому наследуют все методы object.
Не вижу никаких оснований так считать. -------------------- I don't need a reason being who I am... |
|||
|
||||
| SpaceSpace |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 366 Регистрация: 10.4.2007 Где: Самара Репутация: нет Всего: 10 |
ну.. в общем я подумал.... почитал..
скорее всего мои догадки были неверны Корень моего незнания - в том что меня переклинило и я попутал object c System.Object поэтому прошу прошения за дезинформацию, Nullable - value, лежит в куче Это сообщение отредактировал(а) SpaceSpace - 3.9.2007, 10:32 -------------------- Репутация - самое ценное, что есть у человека. Зарабатывают годы, теряют за мгновение. 70-565 MCPD Enterprise 3.5 |
|||
|
||||
| HalkaR |
|
|||
![]() Пуфыстый назгул ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2132 Регистрация: 8.12.2002 Где: В Москве Репутация: 5 Всего: 42 |
object и System.Object суть одно и тоже - синонимы это. А то, что неявняе наследники reference типа могут быть value типами - ничего удивительного. Это сообщение отредактировал(а) HalkaR - 3.9.2007, 10:37 |
|||
|
||||
| QryStaL |
|
|||
![]() Intellectual feast ![]() ![]() Профиль Группа: Участник Сообщений: 914 Регистрация: 30.11.2005 Репутация: 10 Всего: 32 |
-------------------- I don't need a reason being who I am... |
|||
|
||||
| HalkaR |
|
|||
![]() Пуфыстый назгул ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2132 Регистрация: 8.12.2002 Где: В Москве Репутация: 5 Всего: 42 |
Всегда, если они неупакованны.
Никакого нонсенса Похоже что да. |
|||
|
||||
| SpaceSpace |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 366 Регистрация: 10.4.2007 Где: Самара Репутация: нет Всего: 10 |
вот это и есть мой пробел спасибо за инфу -------------------- Репутация - самое ценное, что есть у человека. Зарабатывают годы, теряют за мгновение. 70-565 MCPD Enterprise 3.5 |
|||
|
||||
![]()
|
| Прежде чем создать тему, посмотрите сюда: | |
|
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :) Так же не забывайте отмечать свой вопрос решенным, если он таковым является :) Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, Partizan, PashaPash. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | .NET для новичков | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |