>>Лично меня этот gcc 3.2 со своими новыми особенностями уже задолбал.
>>То одно ему не нравится, то другое. А разбираться просто времени нет,
>
>А зря. Не нравится ему, главным образом, код, не соответствующий
>стандарту языка. История "возмужания" C++ длинная и сложная, много
>есть старомодных фич, которых по уму следовало бы избегать, есть и
>такие, использование которых уже сейчас помечено как "не рекомендуемое",
>а то и грозящее "неопределённым" результатом.
А что именно зря? Реальная ситуация - открыли свою конторку, весь софт сгоряча
решили писать сами, программировать умеют трое, реально рассчитывать можно на
двоих. Весь год сплошной аврал. Програмлю я уже довольно давно и у меня своих
наработок с мегабайт исходного текста еще с ДОС-овских времен. Естественно я время
от времени эти наработки использую и естественно там сплошь и рядом "старомодные
фичи". И вот мне надо что-то срочно сделать, а у gcc 3.2.x понимаешь ли теперь
"новомодные фичи" появились. Помоему вполне естественное решение вернуть старый
добрый gcc 2.95, а "разборки" с gcc 3.2 отложить до более подходящего момента.
>>поэтому я дефалтовым компилером поставил gcc 2.95 - с ним все отлично
>>компилиться. А что касается самого gcc 3.2, то у меня скомпилилось когда
>>заменил #include <iostream> на #include <iostream.h> При этом даже не
>>надо было указывать namespace:
>>
>>//hello.cpp
>>#include <iostream.h>
>>main () {
>> cout << "Hello World\n";
>>}
>>//
>>
>>Компилил: g++ -o hello hello.cpp
>>
>
>Пример некорректного антикварного кода. Абсолютно весь runtime (и
>унаследованный от C, и относящийся к C++) ныне запихали в std::,
>дабы исключить возможные конфликты имён с пользовательскими
>идентификаторами. По слухам, <stdio.h> через пару лет могут объявить
>"deprecated", так что привыкайте к `#include <cstdio>` да std::printf()
>:)
>
>У GCC 3.x серий, по крайней мере, стало существенно лучше с поддержкой
>
>сложных шаблонов. 2.95.3, конечно, в некоем смысле эталон, но - эталон
>старомодных практик C++-программирования. Которые в нём достигли своего
>апогея как раз после того, как все серьёзные эксперты раскритиковали их
>в пух и прах.
>
В принципе спасибо за лекцию, только я уже сам более или менее во всем разобрался -
читать вроде еще не разучился, да и Интернет всегда под рукой:))) И даже потихоньку
правлю кое-какой код. Благо мой 2.95.4 и с большинством "новых фич" работает
нормально :)))
Да и насчет iostream.h - для полноты картины, вы забыли упомянуть, что там есть строки
#include <iostream> и using std::cout
- поэтому оно все и сработало. ;-)
>А после `using namespace std` должно всё содержимое оного namespace'а
>быть доступно. Так что шось у вас с вашей конкретной локальной установкой
>
>GCC не то.
А это вы к чему и о чем? Я вроде ни на что подобное не жаловался :)))