Форум программистов, компьютерный форум CyberForum.ru

Ограничения исключительных ситуаций f(.)throw(.){} - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Почему перегруженные шаблоны функций должны возвращать один и тот же тип? http://www.cyberforum.ru/cpp-beginners/thread634228.html
Так как я еще очень плохо знаю шаблоны и никак не могу понять. Почему у всех перегруженных шаблонных функций с одинаковыми именами так же должны быть одинаковые возвращаемые значения? Первая программа компилируется а вторая нет. Во второй программе у второго шаблона я просто изменил тип возвращаемого значения с void на int 1) компилируется struct job { char name; double salary;...
C++ Не вызывается нужный конструктор базового класса Здравствуйте. Я пока в процессе изучения С++. Имеется следующая структура классов: Базовый: Person, расширяющие его: Student и Manager, и наследующий их обоих класс Employee - древо в виде ромба :) Вот собственно код: #include <iostream> http://www.cyberforum.ru/cpp-beginners/thread634211.html
Посчитать сумму четных элементов двумерного масива C++
посчитать сумму четных элементов двухменого массива 10*10 расположенных под главной диагональю
Разбор сложной строки с аргументами C++
Здравствуйте друзья! Мне кажеться я заблудился в этой жизни(( В мою длл через пайп поступает строка, а точнее комманда на чтение или запись памяти в этой строке нужно распознать аргументы указывающие на адресс ячейки памяти которую нужно прочитать/или записать, аргументы разделены знаком # 1 аргумент строки означает чтение или запись 2 аргумент адресс ячейки
C++ Argc и Argv http://www.cyberforum.ru/cpp-beginners/thread634117.html
Всем привет, у меня такой вопрос, как правильно вызвать данную функцию int test(int argc, char* argv){ } Я делала так, но компилятор выдает ошибки int main(int argc, char* argv){ for( i = 1; i<argc; i++) test(1, argv = "-n 1") } Что-то я неправильно делаю...
C++ Компилятор не видит заголовочные файлы >Quiet Snow<, вот тут все описано :) Как сделать, чтобы он инклюды видел? Взято отсюда подробнее

Показать сообщение отдельно
Alberto_Timakov
1 / 1 / 0
Регистрация: 21.11.2011
Сообщений: 183
07.08.2012, 14:29  [ТС]     Ограничения исключительных ситуаций f(.)throw(.){}
а вот еще вопрос,
Цитата Сообщение от ForEveR Посмотреть сообщение
По стандарту, если выкидывается исключение, не входящее в спецификацию, должна быть вызвана функция unexpected, которая по умолчанию вызывает std::terminate, так же можно написать свой хандлер, который будет либо вызывать abort/terminate либо кидать исключение допустимого типа
Написал, следующий код (Шилдт, аналогично на http://www.cplusplus.com/reference/s...set_terminate/ да и на этом форуме есть нечто похожее на что ответа нету...):
Но он почему-то не работает...что не так?

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
#include "stdafx.h"
#include <iostream>
#include <exception>
#include <locale>
#include <fstream>
 
using namespace std;
 
 
void MyTerminate()
{
    std::ofstream out("test", std::ios::out | std::ios::app);
    out << "Новый обработчик terminate()" << endl;
    out.close();
    abort();
}
 
int main(void)
{
    setlocale(LC_ALL,"Russian");
    set_terminate(MyTerminate);
 
    cout << "Начало \n";
    try
    {
        cout << "Внутри блока try" << endl;
        throw 100;
    }
    catch(double)
    {
        cout << "double" << endl; 
    }
}
 
Текущее время: 01:56. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru