Доброе время суток, в новых g++ (> 3.3.4) член класса по умолчанию не инициализируется. Это баг, особенность дебиана или так и должно быть? Если я правильно перевел стандарт, то "обычные" типы должны быть автоматически проинициализированны в 0. Пример: #include <iostream> class A { public: int i; double d; }; using namespace std; int main (int argc, char * argv[]) { A a; cout<<a.d<<" "<<a.i; return 0; }; g++ -v; g++ -o test test.cc && ./test gcc version 3.3.3 20040412 (Red Hat Linux 3.3.3-7) 6.43534e-317 0 gcc version 3.3.4 (Debian 1:3.3.4-13) -1.99768 1076069920 gcc version 3.4.2 (Debian 3.4.2-2) -1.99768 1076164128 Спасибо
Ответ на:
комментарий
от idle
Ответ на:
комментарий
от fghj
Ответ на:
комментарий
от anonymous
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.
Похожие темы
- Форум вопрос по C++ (2014)
- Форум [C++] Перегрузка new и delete в производном классе (2011)
- Форум Не компилируется программа :( (2008)
- Форум C++/exceptions - деление на ноль не ловиццо, почему? (2006)
- Форум C++ простая программа (2014)
- Форум Баг в gcc? (2010)
- Форум Проблема с компиляцией простейшего кода на GCC 4.5.2 (2012)
- Форум `cout.operator<<()` vs `cout << ` (2013)
- Форум С++ размышление об указателях на члены-переменные структур/классов (2020)
- Форум constexpr массивы в c++ (2018)