#include <iostream>
template <unsigned int I>
class X
{
public:
static unsigned int const res = X<I + 1>::res + 1;
};
template <>
class X<15>
{
public:
static unsigned int const res = X<0>::res + 1;
};
int main()
{
std::cout << X<0>::res;
}
ANSI C++ Front-end Compiler & Virtual Machine, Version 3.0.
Copyright (c) 1998-2003, Interstron, Ltd.
*** C++ FrontEnd
D:\soft\compiler\tmp\test.cpp.4 (1, 1): error 0332: Internal program error
Excption:Unknown
unknown exception!
спасибо. тебе и Bell.
этот отвалился на глубине 36, EDG тоже.
VS не понимал static const int константы, но с рекурсией 100 справился.
такие вот наблюдения
Здравствуйте, Pavel Chikulaev, Вы писали:
PC>>>Они даже не знают, что ANSI не авторитет в мире C++ D>>В смысле? ISO и ANSI стандарты С++ фактически один и тот же стандарт, у него только обложка разная. PC>Я знаю Ну просто странно писать американский стандарт (они явно не попадут на тот рынок), когда есть международный. PC>Впрочем Borland свой компилятор также называла, а Microsoft c приходом Саттера только ISO/IEC.
Имя ANSI для более или менее строго соответствия Стандарту общепринятая практика. Например словосочетания ANSI alias, strict ANSI complain, etc. По поводу MS вот ссылочка http://msdn2.microsoft.com/en-us/library/0k0w269d(VS.80).aspx на ключ /Za для Whidbey, там это тоже называется ANSI:
/Za flags language constructs not compatible with either ANSI C++ or ANSI C as errors.
NB>спасибо. тебе и Bell. NB>этот отвалился на глубине 36, EDG тоже. NB>VS не понимал static const int константы, но с рекурсией 100 справился. NB>такие вот наблюдения
А что ты называешь EDG? Просто этот дигнус использует фронт энд ЕДГ, версии 3.04 или как там они их называют
Of course, the code must be complete enough to compile and link.
Здравствуйте, strcpy, Вы писали:
S>Здравствуйте, night beast, Вы писали:
NB>>в fido7.su.c-cpp ссылка проскочила NB>>http://www.interstron.ru/text.asp?id=2102
S>Я у него в корневом каталоге файлы делал. И они там сохранялись Весь диск заполнять не стал, пожалел.
Здравствуйте, Lorenzo_LAMAS, Вы писали:
NB>>спасибо. тебе и Bell. NB>>этот отвалился на глубине 36, EDG тоже. NB>>VS не понимал static const int константы, но с рекурсией 100 справился. NB>>такие вот наблюдения
L_L>А что ты называешь EDG? Просто этот дигнус использует фронт энд ЕДГ, версии 3.04 или как там они их называют
Здравствуйте, night beast, Вы писали:
NB>Здравствуйте, Lorenzo_LAMAS, Вы писали:
NB>>>спасибо. тебе и Bell. NB>>>этот отвалился на глубине 36, EDG тоже. NB>>>VS не понимал static const int константы, но с рекурсией 100 справился. NB>>>такие вот наблюдения
L_L>>А что ты называешь EDG? Просто этот дигнус использует фронт энд ЕДГ, версии 3.04 или как там они их называют
NB>тот который DinkumExam (EDG). NB>версию не написали.
Версию едг в онлайн компиляторах проверять можно так :
template<int>class A{};
int main()
{
A<__EDG_VERSION__>() = 0;
}
правда, это при условии, что определен __EDG_VERSION__ и в сообщении об ошибке будет сказано что- то вроде
no operator "=" matches these operands
operand types are: A<300> = int
, как я понимаю, не всегда срабатывает, даже если действительно используется фронт-энд ЕДГ.
Итак, у Димкуна довольно-таки старая версия ЕДГ.
Of course, the code must be complete enough to compile and link.