Форум программистов, компьютерный форум, киберфорум
C++
Войти
Регистрация
Восстановить пароль
 
 
Рейтинг 4.56/9: Рейтинг темы: голосов - 9, средняя оценка - 4.56
мну довольно <(-__-)l
214 / 203 / 15
Регистрация: 17.01.2010
Сообщений: 2,462
1

Странное поведение bool

13.02.2012, 20:48. Просмотров 1849. Ответов 23
Метки нет (Все метки)

Помогал отлаживать код и мы наткнулись на удивительное.

Кодер скрыл отображение варнингов в VS2010.
Метод М1 не всегда возвращал значение типа bool.
И потому в методе М2, вызывающем метод М1, случилась такая ситуация, что:
C++
1
M1()!=true & M1()!=false
Это нормальное поведение компилятора?
Логика то понятна, но почему это вообще варнинг, а не еррор как в си шарпе?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
13.02.2012, 20:48
Ответы с готовыми решениями:

Странное поведение указателя
class XMLDocument { public: char *xml; XMLDocument() { }; void NewXML()

Странное поведение!
Доброго времени суток! На лицо странное (на мой взгляд) поведение С++ Builder 6. Итак код:...

Странное поведение Builder XE
Добрый день! При работе программы возникает ошибка типа acces violation в след куске кода: for...

Странное поведение UnicodeString.
С некоторого момента UnicodeString без особых на то причин начала вести себя странно. Variang...

23
Жарю без масла
867 / 749 / 225
Регистрация: 13.01.2012
Сообщений: 1,702
13.02.2012, 23:20 21
у меня 4.6.2 - не такой уж и древний.
для С++ в стандарте явно сказано, что должно быть. нет там никаких умолчаний. умолчания были "во времена Очакова и покорения Крыма".
либо ретурн что-то явно(для возвращающих значение ф-ий), либо(в отсутствие ретурна) интерпретируется как ретурн воид
поправьте, если не прав

Добавлено через 11 минут
хотя, соглашусь. нет тут бага. вроде разобрался почему g++ жрет такое
0
Эксперт С++
2919 / 1268 / 114
Регистрация: 27.05.2008
Сообщений: 3,465
14.02.2012, 09:30 22
Цитата Сообщение от gGrn-7DA Посмотреть сообщение
да, логично. Но почему оно != true и != false
Потому, что оно неинициализированное.
0
gGrn-7DA
14.02.2012, 19:02  [ТС]
  #23

Не по теме:

CheshireCat, да, уже разобрались.

0
Kastaneda
14.02.2012, 19:48     Странное поведение bool
  #24

Не по теме:

C++
1
M1()!=true & M1()!=false
если бы M1() возвращала значение, то можно было бы подумать, что это проверка на NAN. Я сразу так и подумал, пока дальше тему не почитал.

0
14.02.2012, 19:48
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.02.2012, 19:48
Привет! Вот еще темы с ответами:

Странное поведение окон
Здравствуйте! Демка с комментами Суть. Мне нужно создать независимое окно с отдельной...

Странное поведение XE2
Как такое возможно(скриншот). И еще замечаю - не всегда происходит присваивание значений переменным.

Classic Bluetooth странное поведение сокета
Доброго времени суток ! Пытаюсь подружить устройство на stm32+CH-06 с компом Использую...

Странное поведение char при выводе в Edit
void __fastcall TForm1::Edit2Change(TObject *Sender) { char s; AnsiString s1; if(Edit2-&gt;Text !=...


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

Или воспользуйтесь поиском по форуму:
24
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.