|
Заблокирован
|
||
Поведение оператора new платфоромозависимое?19.09.2014, 11:04. Показов 3757. Ответов 59
Метки нет (Все метки)
В случае неудачи оператора new, допустим out of memory, он может кинуть исключение или вернуть ноль:
MSDN:
0
|
||
| 19.09.2014, 11:04 | |
|
Ответы с готовыми решениями:
59
Не понятное поведение тернарного оператора Неправильное поведение программы с использованием логического оператора или
|
|
Заблокирован
|
||
| 19.09.2014, 15:48 [ТС] | ||
|
0
|
||
|
3225 / 1752 / 436
Регистрация: 03.05.2010
Сообщений: 3,867
|
||
| 19.09.2014, 16:11 | ||
|
1
|
||
|
3225 / 1752 / 436
Регистрация: 03.05.2010
Сообщений: 3,867
|
||
| 19.09.2014, 16:17 | ||
|
0
|
||
|
2924 / 1274 / 114
Регистрация: 27.05.2008
Сообщений: 3,465
|
||
| 19.09.2014, 16:27 | ||
|
0
|
||
|
3225 / 1752 / 436
Регистрация: 03.05.2010
Сообщений: 3,867
|
||
| 19.09.2014, 16:38 | ||
|
"Тем не менее, настоящие программисты на C++ по-прежнему представляют нулевой указатель литералом 0. Применяя любой другой способ, вы рискуете показаться безнадежно старомодным."
0
|
||
|
19501 / 10106 / 2461
Регистрация: 30.01.2014
Сообщений: 17,825
|
||||||||||||||||||||||||||
| 19.09.2014, 20:52 | ||||||||||||||||||||||||||
|
в 18.3.2.2
18.6.1.1
Стандартом гарантируется, что компилятор знает как преобразовать 0 в правильный null pointer, этого достаточно, чтобы без опаски использовать его (0). Так что слова Страуструпа ни в коем случае не расходятся со стандартом и с реальным положением вещей. PS. Да, я работал с платформами, где null pointer имеет не равное числовому нулю битовое представление, и в С++ ноль приведенный к указателю принимал правильное значение. Все вышесказанное относится к С++. В С действительно нужен NULL. В заключение приведу кусочек GNU libio.h
А уже вот в таком примере мы бы получили ошибку компиляции:
0
|
||||||||||||||||||||||||||
|
Заблокирован
|
|||
| 20.09.2014, 06:27 [ТС] | |||
и ни на что другое я вряд ли пересяду, хотя всегда считал WinAPI наиболее качественным и профессиональным средством разработки, правда чисто под windows. Ну это я всё к тому, что мне всякие там выборы компилятором перегруженных функций, когда передаёшь туда ноль, как то по барабану. И можете даже не смеяться по поводу моего не желания использовать перегруженные функции (конечно же иногда я их использую), программирование - такая штука, где можно лет 50 чему то учится, а потом придёт пацан и скажет, что ты всё делаешь не правильно но ты уже ничего не будешь менять и скажешь ему "я слишком стар, чтоб что - то менять, я так уже привык" .Тут то я спрашивал про nullptr_t - который по моему мнению вряд ли где - то находит серьёзное применение , нет ну правда, это же тип нуля, а какой в нём только - то ? Ну вот просто пример void Hello(std::nullptr_t);, ну и что? Накой хрен писать процедуру, которая может принимать параметр только ноль? Я проще напишу void Hello(int a); и буду проверять его на ноль
0
|
|||
|
:)
4773 / 3267 / 497
Регистрация: 19.02.2013
Сообщений: 9,046
|
|||||||||||
| 20.09.2014, 12:24 | |||||||||||
|
Введение типа std::nullptr_t нужно для того, чтобы при наличии таких перегрузок:
Достигается это тем, что тип nullptr_t (когда передается объект nullptr) может быть неявно преобразован в любой указатель, но не в целое.
0
|
|||||||||||
|
19501 / 10106 / 2461
Регистрация: 30.01.2014
Сообщений: 17,825
|
||
| 20.09.2014, 12:46 | ||
|
И поверь, мне абсолютно по барабану используешь ты перегруженные функции или нет
0
|
||
|
Игогошка!
1801 / 708 / 44
Регистрация: 19.08.2012
Сообщений: 1,367
|
||||||||||||||||||||||||||||||||
| 20.09.2014, 14:32 | ||||||||||||||||||||||||||||||||
Вот еще два:1)
2) Вывод типов шаблонов работает неверно для 0 и для NULL. Выводится, ну например, int. А для nullptr верно - выводится nullptr_t. Например. Я хочу написать функцию, которая вначале что-то лочит, а потом вызывает другую функцию, передавая ей указатель на данные. Будет это выглядеть как-то так:
В то же время со следующим вызовом все окей:
2
|
||||||||||||||||||||||||||||||||
|
19501 / 10106 / 2461
Регистрация: 30.01.2014
Сообщений: 17,825
|
|||||
| 20.09.2014, 14:56 | |||||
|
Вообще же, ты слишком буквально понял мой пост, все твои примеры, собственно, того же разлива, что и и мои примеры в перегрузкой (я просто не стал это разжевывать - выходит зря). Все это в итоге достигается введением конверсии из nullptr_t -> some ptr type, вместо прежней int -> some ptr type. Все примеры (и твои и мои) - это лишь демонстрация этого эффекта и показывают, суть, эту конверсию. Именно это я и имел в виду под Добавлено через 3 минуты Скажем так, читать это надо было так:
0
|
|||||
|
Игогошка!
1801 / 708 / 44
Регистрация: 19.08.2012
Сообщений: 1,367
|
||
| 20.09.2014, 14:58 | ||
|
0
|
||
| 20.09.2014, 15:00 | |
|
0
|
|
| 20.09.2014, 15:13 | |
|
0
|
|
|
3225 / 1752 / 436
Регистрация: 03.05.2010
Сообщений: 3,867
|
||
| 20.09.2014, 15:40 | ||
|
1
|
||
|
Заблокирован
|
||||||
| 20.09.2014, 18:59 [ТС] | ||||||
|
По моему вот это бред (в Qt)
0
|
||||||
|
:)
4773 / 3267 / 497
Регистрация: 19.02.2013
Сообщений: 9,046
|
|
| 20.09.2014, 22:33 | |
|
Scrooge McDuck, intellisense это патентованое от ms, которое работает в студии. Креатор не может, потому что не дорос еще.
0
|
|
| 20.09.2014, 22:33 | |
|
Необычное поведение оператора инкремента Странное поведение оператора сравнения Поведение оператора echo при вызове функций Непонятное поведение поведение TIM6 на STM32f4discovery Избыточное копирование объекта при реализации оператора умножения и оператора присваивания Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Krabik для WoW 3.3.5a, многоязычный
AmbA 02.07.2026
Допилил бота, думаю что окончательно. Изменения:
- добавлена многоязычность
- добавлено снятие скриншотов
- добавлено поддержание бафов хождения по воде (для жреца, дк и шамана)
- и так, по. . .
|
Алиса нашла кучу ошибок компиляции и запуска в проекте, который без проблем компилировался и запускался)))
anaschu 30.06.2026
Я пока посмеюся, но завтра проверю. А вообще интерсно. Дал алисе файл, в котором точно нет ошибок компиляции и запуска, и попросил их найти. Нашла кучу)))
Критические ошибки, мешающие компиляции и. . .
|
сукцессия 16. Общий обзор, в основном что бы другие ии поняли
anaschu 29.06.2026
# Передаточный документ: модель микоризной сукцессии (для нового чата)
Этот документ предназначен для того, чтобы новый чат Claude мог продолжить
работу без необходимости заново разбираться в. . .
|
сукцессия 15 неявная схема
anaschu 29.06.2026
Алиса
Калибровка параметров симбиотической модели: технический обзор
Содержание:
Введение
Постановка проблемы
Технические аспекты реализации
Процесс внедрения изменений
|
|
сукцессия 14. Обновленная схема модели
anaschu 28.06.2026
ГЛОБАЛЬНАЯ ОПИСАТЕЛЬНАЯ СПЕЦИФИКАЦИЯ ЭКОСИСТЕМНОЙ МОДЕЛИ «SOIL CHEMISTRY & MYCORRHIZA 2. 0»
https:/ / ibb. co/ NnkGpfMd
Представленная интегрированная схема описывает непрерывную нелинейную. . .
|
сукцессия 13. Питон модель трехзонного мицелия, пока что в основном арбускулярного
anaschu 28.06.2026
## Разработка агентной модели микоризной сукцессии: от выявления артефактов к созданию комплексной системы
### Аннотация
Представлено исследование по разработке агентной модели микоризной. . .
|
сукцессия 12. краткий список проверок модели перед запуском.
anaschu 27.06.2026
Скрытые отказы в моделях систем динамики (SD-models) экологических систем: два случая из практики
Контекст
Разбирался прототип модели систем динамики (SD-модели) микоризной сукцессии: пять. . .
|
Сукцессия 11. Проверка орудий перед войной: разработка через тестирование
anaschu 27.06.2026
Как не дать модели соврать самой себе: проверки для симуляции микоризной сукцессии
Введение
Когда вы строите математическую модель живой системы — грибов, растений, почвы — главная опасность. . .
|