![]() |
|
Модераторы: bsa |
![]()
|
|
| mrbrooks |
|
|||
![]() трололомен ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 4259 Регистрация: 4.10.2006 Где: Дол Гулдур Репутация: 19 Всего: 306 |
||||
|
||||
| cardinal |
|
|||
![]() Инженер ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 6003 Регистрация: 26.3.2002 Где: Германия Репутация: нет Всего: 99 |
Вы сделайте .асм листинг для последних трех предложений и посмотрим, что элегантней (мне например очень интересно)
-------------------- Немецкая оппозиция потребовала упростить натурализацию иммигрантов В моем блоге: Разные истории из жизни в Германии "Познание бесконечности требует бесконечного времени, а потому работай не работай - все едино". А. и Б. Стругацкие |
|||
|
||||
| azesmcar |
|
|||
![]() uploading... ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 6291 Регистрация: 12.11.2004 Где: Армения Репутация: 52 Всего: 211 |
||||
|
||||
| baldina |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3433 Регистрация: 5.12.2007 Где: Москва Репутация: 15 Всего: 101 |
да никак. непричем он |
|||
|
||||
| azesmcar |
|
||||||
![]() uploading... ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 6291 Регистрация: 12.11.2004 Где: Армения Репутация: 52 Всего: 211 |
тут должна быть проблема, нет гарантии, что
адрес s сможет разместить int можно так
оператор new должен вернуть указатель, способный разместить любой тип. если я правильно помню такой код вызывал проблемы на SunOS. Кто может проверить? Это сообщение отредактировал(а) azesmcar - 29.11.2010, 10:56 |
||||||
|
|||||||
| baldina |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3433 Регистрация: 5.12.2007 Где: Москва Репутация: 15 Всего: 101 |
что Вы имеете в виду? Добавлено через 1 минуту и 51 секунду особенно интересно в связи с alignment |
|||
|
||||
| baldina |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3433 Регистрация: 5.12.2007 Где: Москва Репутация: 15 Всего: 101 |
azesmcar, понял. вопрос снят
|
|||
|
||||
| azesmcar |
|
||||
![]() uploading... ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 6291 Регистрация: 12.11.2004 Где: Армения Репутация: 52 Всего: 211 |
некоторые системы имеют требования к размещению типов. Например так: int должен размещаться по адресу, который делится без остатка на 4. Следовательно грубый cast адреса и размещение в нем типа int может нарушить это требование, отсюда и проблемы переносимости. Стандарт гарантирует, что оператор new вернет адрес, который (не знаю как первести) properly aligned для хранения объекта любого типа (этим занимается сама система).
а для стековых объектов такой гарантии нет. В Loki Александреску использовал трюк с union-ом max_align, но Саттер вроде писал, что это не 100% переносимо, хотя судя по тому, что он не привел примера, эта непереносимость скорее всего проявляется на сферическом компиляторе в вакууме http://www.gotw.ca/gotw/028.htm Это сообщение отредактировал(а) azesmcar - 29.11.2010, 13:06 |
||||
|
|||||
![]()
|
| Правила форума "C/C++: Для новичков" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Для новичков | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |