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

Как вернуть из функции ошибку и её расшифровку? - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Три камня преткновения http://www.cyberforum.ru/cpp-beginners/thread934948.html
Доброго времени суток форумчане! Углубляясь в изучение этого интересного ЯП постоянно генерируются вопросы, ответы на которые не смог нагуглить, но их понимание необходимо для дальнейшего изучения, поэтому хочу обратиться к более профессиональным программистам, которые помогут мне разобраться в следующем: 1) В википедии прочитал следующее => "Существует множество реализаций языка С++, как...
C++ Ошибка в несовместимости типов Отрывок : int main() { char choice; list(); for(;;) { choice = menu();//Показывает ошибку " Unit1.cpp(23): E2109 Not an allowed type" switch (choice){ case 'd' : display(); http://www.cyberforum.ru/cpp-beginners/thread934938.html
C++ Конструктор и деструктор
Всем привет.Вообщем передо мной стоит такая задача-Отобразить на экране время работы программы, используя конструктор и деструктор.В конструкторе используем ф-ию clock а в диструкторе вывести когда отработала программа
Существует ли эквивалент функции toupper() для типа string ? C++
Существует ли эквивалент функции toupper(), предназначенной для типа char, что - нибудь подобное для типа string ?
C++ чтение из файла и добавление в контейнер http://www.cyberforum.ru/cpp-beginners/thread934912.html
std::ofstream out; out.open("FilegRANDCHILED.dat", std::ios::binary | std::ios::trunc); if(!out) { MessageBox(hWnd, L"File no create!!!", L"Error", MB_ICONERROR | MB_OK); break; } else { MessageBox(hWnd, L"Begin write file!!!", L"OK", MB_ICONINFORMATION | MB_OK);
C++ Удаление элементов из vector; bind или not1 Как правильно забиндить, - сделать аналог, как через лямбду. Или же тут больше подойдет использование not1 (или not2). Не могу сам разобраться. Вот код:#include <iostream> #include <string> #include <vector> #include <algorithm> #include <functional> class A { std::string m_ext; public: подробнее

Показать сообщение отдельно
noeine
0 / 0 / 0
Регистрация: 31.07.2013
Сообщений: 45
07.08.2013, 19:06     Как вернуть из функции ошибку и её расшифровку?
Вот пример функции:
C++
1
2
3
4
5
6
7
8
9
10
11
int test(int i) {
    if (!i) {
        //Добавить к возврату текстовое сообщение об ошибке
        return 0;
    }else if (i < 10) {
        return 1;
    }else if (i>=10) {
        //Добавить к возврату сообщение об ошибке
        return 0;
    }
}
То есть тут 2 варианта ошибки, когда число >=10 и когда =0. Могу как-то я из этой функции вернуть наружу не только true\false но еще и расшифровку ошибки?

Во пример обращения в неё:
C++
1
2
3
4
5
6
7
8
    int var = test(5);
    if (!var) {
        cout << "Wrong request" << endl;
    }else{
        cout << "Request accepted" << endl;
    }
    system("pause");
    return 0;
Как я могу задать текстовое значение ошибки в функции test и вернуть его в переменную в которую применяется функция?

Чтобы например работала такая конструкция:
C++
1
2
3
4
int var = test(11)
if (!var) {
    cout << text_of_error_message;
}
И если в функцию test передается число 11, возвращалась бы ошибка "слишком большое число", а если 0, та же конструкция выводила бы "нельзя ввести 0".
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 04:22. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru