Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 06.02.2013, 12:25   #1
xe3
Пользователь
 
Аватар для xe3
 
Регистрация: 11.12.2012
Сообщений: 29
По умолчанию Преобразование к типу - static_cast...

Народ, объясните бестолковому, зачем введен static_cast и в чем разница между

sometype something=static_cast<sometype> a;

и

sometype something=(sometype)a;

????
xe3 вне форума Ответить с цитированием
Старый 06.02.2013, 12:43   #2
Abstraction
Старожил
 
Аватар для Abstraction
 
Регистрация: 25.10.2011
Сообщений: 3,178
По умолчанию

Так можно:
Код:
const Sometype* cps = initial;
Sometype* ncps = (Sometype*) cps;
Так нельзя:
Код:
const Sometype* cps = initial;
Sometype* ncps = static_cast<Sometype*>(cps);
Также, легко найти все места в коде, где используется static_cast. Задачу обнаружения всех мест, где используется приведение типов в старом стиле, лёгкой не назовёшь.
Abstraction вне форума Ответить с цитированием
Старый 07.02.2013, 11:22   #3
xe3
Пользователь
 
Аватар для xe3
 
Регистрация: 11.12.2012
Сообщений: 29
По умолчанию

Т.е. грамматически правильнее его использовать, но С++, как и положено, ничего не навязывает и в стандарт не вводит. Понятно. Спасибо!
xe3 вне форума Ответить с цитированием
Старый 07.02.2013, 13:56   #4
waleri
Старожил
 
Регистрация: 13.07.2012
Сообщений: 6,342
По умолчанию

Вводит в стандарт, просто старый каст это тоже стандарт...
waleri вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вопрос по диапазонному типу lialia Паскаль, Turbo Pascal, PascalABC.NET 1 17.12.2012 20:52
Игра по типу Космаков saggy Gamedev - cоздание игр: Unity, OpenGL, DirectX 21 24.09.2012 11:24
static_cast или reinterpret_cast _-Re@l-_ Общие вопросы C/C++ 7 11.12.2011 08:44
Static_cast Lotles Общие вопросы C/C++ 1 24.10.2010 16:05
Приведение к типу __Demon__ Общие вопросы C/C++ 1 27.09.2009 17:40