Я новичок в C++, поэтому извините за то, что задал очень глупые вопросы, но меня путают с инструкциями throw в Механизме обработки исключений C++.Confused with C++ Exception throw statement
- В приведенном ниже коде, почему мы вызываем функцию с именем, соответствующим названию класса ?
- Это конструктор?
- Создает ли экземпляр
class Except
?
Я не понимая синтаксис там.
class A
{
public:
class Except{};
void foo() { throw Except(); }
};
int main()
{
A a;
try
{
a.foo();
}
catch(Except E)//exception handler
{
cout << "Catched exception" << endl;
}
}
Да, он создает экземпляр 'Except', используя конструктор по умолчанию, который не принимает аргументов. – CoryKramer
Как вы учитесь; catch исключение по ссылке const, например 'catch (const Except & E)' –