12 / 12 / 4
Регистрация: 07.09.2012
Сообщений: 542
|
|
1 | |
Отличие способов приведения28.02.2014, 10:55. Показов 1291. Ответов 14
Метки нет (Все метки)
0
|
28.02.2014, 10:55 | |
Ответы с готовыми решениями:
14
Отличие static_cast от приведения в стиле С Отличие способов передачи массива в функцию В чём отличие разных способов объявления переменных? Отличие двух способов создания String |
654 / 575 / 164
Регистрация: 13.12.2012
Сообщений: 2,124
|
||||||
28.02.2014, 11:06 | 2 | |||||
кажется нет (оба вызывают int())
Добавлено через 8 минут
0
|
Почетный модератор
5850 / 2861 / 392
Регистрация: 01.11.2011
Сообщений: 6,907
|
|
28.02.2014, 11:14 | 3 |
Такой пример к сожалению не показателен.
Первое это преобразование в стиле си. Компилятор при нем пытается сделать static_cast, затем, если не получилось, reinterpret_cast, ну и const_cast до кучи: Приведение типов в C++.
0
|
654 / 575 / 164
Регистрация: 13.12.2012
Сообщений: 2,124
|
|
28.02.2014, 11:19 | 5 |
0
|
Почетный модератор
5850 / 2861 / 392
Регистрация: 01.11.2011
Сообщений: 6,907
|
|
28.02.2014, 11:22 | 6 |
0
|
654 / 575 / 164
Регистрация: 13.12.2012
Сообщений: 2,124
|
|
28.02.2014, 11:31 | 8 |
0
|
Почетный модератор
5850 / 2861 / 392
Регистрация: 01.11.2011
Сообщений: 6,907
|
|
28.02.2014, 12:46 | 9 |
0
|
18840 / 9839 / 2408
Регистрация: 30.01.2014
Сообщений: 17,280
|
|||||||||||
28.02.2014, 13:15 | 11 | ||||||||||
Сообщение было отмечено klynxe как решение
Решение
Отличия будут появляться и пропадать в зависимости от ситуации.
В таком простом случае поведение будет эквивалентно. Одним из достоинств второго способа является простота поиска в коде. Достоинство первого - краткость. Однако в более сложны случаях начинают появляться особенности, которые приведения в стиле Си не позволяют преодолеть, маскируют проблему. Например:
Из-а того, что C-style cast всегда выглядит одинаково, можно замаскировать проблему случайно сняв константность или изменив тип на несовместимый. Последствия этого могут вылезти уже в рантайме, когда будет трудно диагностировать проблему (а ведь его еще и поиском по коду трудно найти). Вот в таком примере
1
|
654 / 575 / 164
Регистрация: 13.12.2012
Сообщений: 2,124
|
|
28.02.2014, 13:17 | 12 |
зачем тогда заявлять что
логично что он будет разный...
0
|
28.02.2014, 15:34 | 15 |
0
|
28.02.2014, 15:34 | |
28.02.2014, 15:34 | |
Помогаю со студенческими работами здесь
15
формулы приведения приведения типов приведения типов Функция приведения от 0 до 1 Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |