Откуда взялся синтаксис `throw (…)`?

В нашем приложении у нас было несколько (член, но это не имеет значения) функций, объявленных как

void SomeFunction(Type argument) throw (...);

С Microsoft Visual C ++ это прекрасно компилируется. Но сейчас я пытаюсь скомпилировать его с GCC, и он отвергает ... как синтаксическая ошибка. Я помню, что слышал об этой конструкции давно, но, глядя на спецификацию, ни C ++ 03, ни C ++ 11, похоже, не позволяют ... там, и я не могу вспомнить, откуда я это взял. Кто-нибудь знает что-нибудь о происхождении этой (явно бессмысленной) конструкции?

10

Решение

Из статьи на http://msdn.microsoft.com/en-us/library/wfa0edys(v=vs.80).aspx:

«Visual C ++ отходит от стандарта ANSI в своей реализации
спецификации исключений. «

6

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]