![]() |
|
Модераторы: Daevaorn |
![]()
|
|
| archimed7592 |
|
|||
![]() Архимед ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2531 Регистрация: 12.6.2004 Где: Moscow Репутация: 58 Всего: 93 |
UnrealMan, а как тебе предложение в будущем попробовать излагать информацию не как насмешку, а как повествование? Мне кажется, что в том, что кто-то чего-то не знает или в чём-то заблуждается нет ничего смешного.
-------------------- If you have an apple and I have an apple and we exchange apples then you and I will still each have one apple. But if you have an idea and I have an idea and we exchange these ideas, then each of us will have two ideas. © George Bernard Shaw |
|||
|
||||
| Dims |
|
||||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1016 Регистрация: 21.11.2006 Репутация: 1 Всего: 11 |
Я всегда думал, что имя класса, за которым в скобках идут аргументы конструктора, создаёт в выражении временный объект с помощью соответствующего вызова конструктора. Не так? Добавлено через 1 минуту и 18 секунд А что это значит? |
||||
|
|||||
| archimed7592 |
|
||||
![]() Архимед ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2531 Регистрация: 12.6.2004 Где: Moscow Репутация: 58 Всего: 93 |
Не всегда.
Очень хорошо объяснил bsa - советую прочитать. А ещё лучше прочитать указанную им книгу.
-------------------- If you have an apple and I have an apple and we exchange apples then you and I will still each have one apple. But if you have an idea and I have an idea and we exchange these ideas, then each of us will have two ideas. © George Bernard Shaw |
||||
|
|||||
| UnrealMan |
|
||||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 722 Регистрация: 30.3.2006 Репутация: 27 Всего: 32 |
Вопрос: если человек чего-то не знает, то почему считает возможным вступать в спор? Зачем так рьяно выдавать свои домыслы за действительность? Может, лучше сначала посмотреть в стандарт? Или хотя бы научиться добавлять к своим словам "IMHO"? Ведь народ сюда приходит не за бабушкиными сказками, не так ли?
А ты сам-то часто следуешь своему предложению? ;) |
||||
|
|||||
| archimed7592 |
|
|||
![]() Архимед ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2531 Регистрация: 12.6.2004 Где: Moscow Репутация: 58 Всего: 93 |
Это уже проблемы конкретного человека. Только не вижу здесь ничего смешного. Если научишь как найти в этом смешное, то буду рад продлевать себе жизнь искренним смехом Нередко ;). -------------------- If you have an apple and I have an apple and we exchange apples then you and I will still each have one apple. But if you have an idea and I have an idea and we exchange these ideas, then each of us will have two ideas. © George Bernard Shaw |
|||
|
||||
| JackYF |
|
|||
![]() полуавантюрист ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 5814 Регистрация: 28.8.2004 Где: страна тысячи озё р Репутация: 18 Всего: 162 |
Что ни день, то открытия... Жаль... Ладно. Будешь пользоваться таким приведением? Я - нет. UB'a мне только в коде не хватало. Но за инфу спасибо. вот. главное, что никакого UB - чётко и ясно указано, с помощью какой функции будет произведено преобразование. |
|||
|
||||
| UnrealMan |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 722 Регистрация: 30.3.2006 Репутация: 27 Всего: 32 |
Когда таких конкретных людей много, это уже проблема форума, где на высказываемые мнения участников нельзя положиться. Добавлено через 4 минуты и 42 секунды Буду, если оно точно сделает то, что я ожидаю.
С помощью той же, что и для каст-нотации. |
|||
|
||||
| archimed7592 |
|
||||||
![]() Архимед ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2531 Регистрация: 12.6.2004 Где: Moscow Репутация: 58 Всего: 93 |
Да ессно, это дело личных предпочтений. Некоторые считают, что лучше писать 0 == a, чем a == 0, тем самым минимизируя вероятность ошибки. Я таких ошибок не делаю уже года 4 и считаю излишним. О кастах сказать такого не могу - потому и не пользуюсь чем попало. Наверное у тебя огромный опыт, раз ты так легко и непринуждённо используешь их. -------------------- If you have an apple and I have an apple and we exchange apples then you and I will still each have one apple. But if you have an idea and I have an idea and we exchange these ideas, then each of us will have two ideas. © George Bernard Shaw |
||||||
|
|||||||
| UnrealMan |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 722 Регистрация: 30.3.2006 Репутация: 27 Всего: 32 |
||||
|
||||
| archimed7592 |
|
|||
![]() Архимед ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2531 Регистрация: 12.6.2004 Где: Moscow Репутация: 58 Всего: 93 |
Да нет, когда делается static_cast ясно и понятно(с большой долей вероятности), что делающий осознаёт что делает(извиняюсь за масло масленное). Когда же делается опасный каст(которых, как оказалось два), не всегда понятно, здесь явно корректное приведение, или кто-то где-то облажался. -------------------- If you have an apple and I have an apple and we exchange apples then you and I will still each have one apple. But if you have an idea and I have an idea and we exchange these ideas, then each of us will have two ideas. © George Bernard Shaw |
|||
|
||||
| UnrealMan |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 722 Регистрация: 30.3.2006 Репутация: 27 Всего: 32 |
||||
|
||||
| archimed7592 |
|
|||
![]() Архимед ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2531 Регистрация: 12.6.2004 Где: Moscow Репутация: 58 Всего: 93 |
specialized-cast vs c-cast. -------------------- If you have an apple and I have an apple and we exchange apples then you and I will still each have one apple. But if you have an idea and I have an idea and we exchange these ideas, then each of us will have two ideas. © George Bernard Shaw |
|||
|
||||
| JackYF |
|
||||
![]() полуавантюрист ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 5814 Регистрация: 28.8.2004 Где: страна тысячи озё р Репутация: 18 Всего: 162 |
Все могут ошибаться. Я был уверен, что static_cast<> не может делать приведения вниз по иерархии. Ошибся. Я и сейчас в недоумении, почему ему разрешено это делать, но со стандартом не поспоришь.
Знаешь, если в программе downcasting выполняется хоть сколько-либо значимое время, то, имхо, прогу давно пора переписывать.
сначала - нет, в последних постах - да. Возможность того, что в результате преобразования я получу мусор, сводит на нет все теоретические скоростные показатели такого преобразования. |
||||
|
|||||
| archimed7592 |
|
|||
![]() Архимед ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2531 Регистрация: 12.6.2004 Где: Moscow Репутация: 58 Всего: 93 |
Такая возможность есть почти везде. Ты ловишь исключения от new?
Неа. Downcasting static_cast'ом - распространённая практика, а вот dynamic_cast'ом - ИМХО, нужно переписывать Вообще говоря, dynamic и const пользовался раза 2-3 в жизни. А reinterpret вообще не юзал. -------------------- If you have an apple and I have an apple and we exchange apples then you and I will still each have one apple. But if you have an idea and I have an idea and we exchange these ideas, then each of us will have two ideas. © George Bernard Shaw |
|||
|
||||
| JackYF |
|
|||
![]() полуавантюрист ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 5814 Регистрация: 28.8.2004 Где: страна тысячи озё р Репутация: 18 Всего: 162 |
После выброса исключения программа закрэшится, но не будет оперировать с мусором. Разница есть. К счастью, не сталкивался с таким. Downcasting сам по себе в плюсах - вещь, использование которой желательно ограничивать... Ты тоже будешь делать downcasting static_cast'ом? P.S. Ребята, вы меня пугаете... |
|||
|
||||
![]()
|
| Правила форума "С++:Общие вопросы" | |
|
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |