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

Класс Стек Stack. не работает класс исключений - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Что-то не так с fopen http://www.cyberforum.ru/cpp-beginners/thread794621.html
Что компилятор хочить в fopen? Вот например что здесь не так? void WriteSum(double *pmatrix) { double **prow, *pnode; int k; FILE *f1; f1 = fopen(fn_sum,"w"); if(!f1){
C++ Разбить введенное слово на слоги Разбить введенное слово на слоги так, чтобы в первом слогу было больше чем одна буква и оканчивалась на гласную, а второй слог содержал хотя бы одну гласную. Не могу понять какие использовать функции. http://www.cyberforum.ru/cpp-beginners/thread794613.html
Реализовать функцию, которая формирует массив Б, состоящий из элементов массива А, к которым применена функция... C++
Помогите, пожалуйста решить задачку. Задан массив А(н). Реализовать функцию, которая формирует массив Б, состоящий из элементов массива А, к которым применена функция ф(...), Вывести на печать исходные и преобразованные массивы. Масив А размещается в памяти динамически. Функция ф(..) и исходный массив передаются в качестве параметров.
Нахождение самого длинного слова C++
Появилась проблема, пишет несколько ошибок. В sl должен попадать текст, до этого попадал, сейчас не знаю, запуталась Т____Т #include "stdafx.h" #include <stdlib.h> #include "conio.h" #include <clocale> #include <string.h> #include <windows.h> struct str {
C++ Экспорт из DataGridView в Excel http://www.cyberforum.ru/cpp-beginners/thread794596.html
Помогите пожалуйста, я экспортировала данные из datagridview в эксель, затем по этим данным в экселе сделала диаграмму, но когда по новой загружаю программу и соответственно ввожу другие данные, то при очередном переносе данных в эксель он мне заменяет данные в экселе и диаграмму приходится строить по новой...Подскажите пожалуйста, как сделать так чтобы данные в экселе заменялись ну и...
C++ Поиск наиболее часто встречающихся слов в файле Дан символьный файл f, содержащий произвольный текст длиной более 5000 слов. Слова в тексте разделены пробелами и знаками препинания. Получить 100 наиболее часто встречающихся слов и число их появлений. Решить задачу без ограничения на длины слов. Набросков нет, так как даже не могу понять какие функции использовать для этой задачи. подробнее

Показать сообщение отдельно
OhMyGodSoLong
~ Эврика! ~
 Аватар для OhMyGodSoLong
1234 / 983 / 42
Регистрация: 24.07.2012
Сообщений: 2,002
26.02.2013, 10:04     Класс Стек Stack. не работает класс исключений
Немного здоровой критики.
Цитата Сообщение от FireProoF Посмотреть сообщение
// Класс исключений для CStack
C++
1
class EStack
C++
1
class EStack : public std::runtime_error
Стандартные классы для исключений есть не просто для красоты.

Цитата Сообщение от FireProoF Посмотреть сообщение
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
CStack& push(const stackdata& data)//заполнение
{
    listitem* item = new listitem;//Создаём указатель и делаем его ячейкой стека
    item->data = data;//Заполняем ячейку данными. присланными извне
    // ...
}
 
stackdata pop()//извлечение
{
    if(empty()==true) throw EStack("Stack is empty");//исключение. Если стек пуст передать в класс исключений сообщение об этом
    // ...
}
 
const stackdata& peek() const
{
    if(empty()) throw (EStack("Stack is empty"));
    return head->data;
}
Выброс исключений почему-то выполняется при абсолютно нормальной для стека ситуации (закончились элементы), а не при действительно исключительной — если для нового элемента не была выделена память. Ну хотя тут есть std::bad_alloc, что хоть что-то, но нормальности первой ситуации это не отменяет.

Цитата Сообщение от anmartex Посмотреть сообщение
C++
1
catch (EStack& error)
C++
1
catch (const EStack& error)
const-корректность же. Нехорошо изменять исключение по пути.
 
Текущее время: 21:15. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru