Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 4.80
List2006
24 / 16 / 2
Регистрация: 19.12.2009
Сообщений: 366
#1

MinGW запрет неявного преобразования типов - C++

29.07.2011, 16:15. Просмотров 1212. Ответов 7
Метки нет (Все метки)

Существует ли какой то режим у gcc (MinGW) где бы компилятор "ругался" или хотя бы предупреждал о неявном преобразование типов?
Причем не важно:
int -> double
или
double -> int
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.07.2011, 16:15     MinGW запрет неявного преобразования типов
Посмотрите здесь:

операторы преобразования типов C++
Преобразования типов C++
Запрет одного преобразования C++
Преобразования типов C++
Преобразования типов C++
C++ Операторы преобразования типов
Преобразования типов C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
asics
Freelance
Эксперт C++
 Аватар для asics
2842 / 1779 / 144
Регистрация: 09.09.2010
Сообщений: 3,842
29.07.2011, 16:22     MinGW запрет неявного преобразования типов #2
Знаю в С++0x это будет пофиксино http://habrahabr.ru/blogs/cpp/69313/
fasked
Эксперт C++
 Аватар для fasked
4929 / 2509 / 180
Регистрация: 07.10.2009
Сообщений: 4,306
Записей в блоге: 1
29.07.2011, 16:28     MinGW запрет неявного преобразования типов #3
int = double может быть проверено включением -Wconversition, а вот обратно не знаю как.
List2006
24 / 16 / 2
Регистрация: 19.12.2009
Сообщений: 366
29.07.2011, 16:37  [ТС]     MinGW запрет неявного преобразования типов #4
а вообще есть какой-то "строгий" режим, в котором компилятор бы высылал все возможные "замечания"?
fasked
Эксперт C++
 Аватар для fasked
4929 / 2509 / 180
Регистрация: 07.10.2009
Сообщений: 4,306
Записей в блоге: 1
29.07.2011, 16:45     MinGW запрет неявного преобразования типов #5
-Wall -Wextra
Полный список с описанием здесь http://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html
List2006
24 / 16 / 2
Регистрация: 19.12.2009
Сообщений: 366
29.07.2011, 16:48  [ТС]     MinGW запрет неявного преобразования типов #6
Цитата Сообщение от asics Посмотреть сообщение
Знаю в С++0x это будет пофиксино http://habrahabr.ru/blogs/cpp/69313/
То ли я что-то не так делаю то ли компилятор эту фичу еще не поддерживает, в общем
Bash
1
g++ -std=c++0x 001.cpp
нечего не сказал

int = double может быть проверено включением -Wconversition, а вот обратно не знаю как.
в MinGW такого атрибута нет =((
grizlik78
Эксперт С++
 Аватар для grizlik78
1890 / 1422 / 104
Регистрация: 29.05.2011
Сообщений: 2,977
29.07.2011, 16:57     MinGW запрет неявного преобразования типов #7
Цитата Сообщение от List2006 Посмотреть сообщение
То ли я что-то не так делаю то ли компилятор эту фичу еще не поддерживает
Думаю, поддерживает. Просто там не о том.

Цитата Сообщение от List2006 Посмотреть сообщение
в MinGW такого атрибута нет =((
-Wconversion
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.07.2011, 17:08     MinGW запрет неявного преобразования типов
Еще ссылки по теме:

C++ преобразования типов
Неявные преобразования типов C++
C++ Преобразования стандартных типов
C++ Объяснить преобразования типов
Ошибка преобразования типов C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
asics
Freelance
Эксперт C++
 Аватар для asics
2842 / 1779 / 144
Регистрация: 09.09.2010
Сообщений: 3,842
29.07.2011, 17:08     MinGW запрет неявного преобразования типов #8
Цитата Сообщение от List2006 Посмотреть сообщение
то ли компилятор эту фичу еще не поддерживает
Вообщем да, но такое ошибку все-таки вызывает:
C++
1
std::vector<int> v{1, 3.1};
Yandex
Объявления
29.07.2011, 17:08     MinGW запрет неявного преобразования типов
Ответ Создать тему
Опции темы

Текущее время: 14:16. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru