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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
AKE
11 / 11 / 0
Регистрация: 09.05.2010
Сообщений: 384
#1

Уведомление об ошибке в функции... - C++

03.08.2010, 13:51. Просмотров 606. Ответов 4
Метки нет (Все метки)

Есть функция которая в процессе выполнения получает значение t, если (t < 0) значения нет. Как уведомить об этом пользователя функции? Если сделать доп. функцию проверки, то вычисления будут проводится дважды...

C++
1
2
3
4
5
6
T3DPoint Ray_And_Plane_Intersection(TRay Ray, TPlane Plane)
{
 float t = (-Plane.A*Ray.StartPoint.X-Plane.B*Ray.StartPoint.Y-Plane.C*Ray.StartPoint.Z-Plane.D)/(Ray.Direction.X*Plane.A + Ray.Direction.Y*Plane.B + Ray.Direction.Z*Plane.C);
 if (t < 0)
  ...
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.08.2010, 13:51     Уведомление об ошибке в функции...
Посмотрите здесь:

Синхронизация потоков - уведомление о событии - C++
Здравствуйте. Я хочу реализовать параллельную одновременную работу двух потоков, один из которых получает сообщения о событиях в...

проверка, сообщения об ошибке - C++
#include &quot;stdafx.h&quot; #include &lt;vector&gt; #include&lt;iostream&gt; #include &quot;locale.h&quot; #include &lt;cstdlib&gt; #include &lt;algorithm&gt; #include...

Создать сообщение об ошибке - C++
Собственно есть програма,про больницу! Вот ее отдельный модуль #include &lt;stdio.h&gt; #include &lt;string.h&gt; #include &lt;conio.h&gt; void...

Помощь в ошибке (Вычислить) - C++
Доброе время суток. Помогите пожалуйста y = (1 / (sin(a + 5*b)) - abs(b - sqrt(a))); Зарание спасибо.

Отладчик при ошибке в программе (не Debug) - C++
Салют. После установки VS 2012 при аварийном завершении работы программы (не только в Debug версии или запуске из среды) раньше вызывался...

Предусмотрение вывода информации об ошибке в программе - C++
Здравствуйте, объясняю, что мне нужно. В моем проекте ( ссылка удалена есть фигуры, которые вычисляются исходя из точек. Так вот в проге...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
CheshireCat
Эксперт С++
2892 / 1241 / 78
Регистрация: 27.05.2008
Сообщений: 3,365
03.08.2010, 13:53     Уведомление об ошибке в функции... #2
Стандартный способ - возбуждать исключение в функции.
AKE
11 / 11 / 0
Регистрация: 09.05.2010
Сообщений: 384
03.08.2010, 13:55  [ТС]     Уведомление об ошибке в функции... #3
CheshireCat, а можно пример, пожалуйста?
Nameless One
Эксперт С++
5769 / 3418 / 255
Регистрация: 08.02.2010
Сообщений: 7,446
03.08.2010, 14:08     Уведомление об ошибке в функции... #4
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
#include <stdexcept>
//...
T3DPoint Ray_And_Plane_Intersection(TRay Ray, TPlane Plane)
{
 float t = (-Plane.A*Ray.StartPoint.X-Plane.B*Ray.StartPoint.Y-Plane.C*Ray.StartPoint.Z-Plane.D)/(Ray.Direction.X*Plane.A + Ray.Direction.Y*Plane.B + Ray.Direction.Z*Plane.C);
 if (t < 0)
  throw(std::runtime_error("Error: float t is negative")); //Наше исключение
//...Дальнейший код
}
 
int main()
{
    try
    {
    //...Код, который может возбуждать исключения
    // в том числе и вызов нашей функции
    }
    catch(std::exception& e)
    {
         std::cerr << e.what() << std::endl;
         return EXIT_FAILURE;
    }
    return EXIT_SUCCESS;
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
03.08.2010, 14:44     Уведомление об ошибке в функции...
Еще ссылки по теме:

Напомните, что это за сообщение об ошибке - C++
|32|error: new declaration 'HMENU__* CreateInputField(HWND__*&amp;, HWND, const wstring&amp;, const RECT&amp;, TEditingString*)'| Что это...

Почему сообщение о фатальном ошибке предпочтительно ? - C++
В чем разница между понятиями фатальная ошибка и не фатальная ошибка ? Почему сообщение о фатальном ошибке можно считать более...

Сообщение о ошибке при заполнении массива - C++
Привет всем! Возникла проблемма при заполнении массива малыми числами. При компиляции выводится сообщение &quot;floating constant truncated...

Неиспользование возвращаемого значения не ведёт к ошибке - C++
привет. посмотрите задачу: #include &lt;iostream&gt; using namespace std; class Counter { public: Counter(): itsVal(0) ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
AKE
11 / 11 / 0
Регистрация: 09.05.2010
Сообщений: 384
03.08.2010, 14:44  [ТС]     Уведомление об ошибке в функции... #5
Nameless One, спасибо
Yandex
Объявления
03.08.2010, 14:44     Уведомление об ошибке в функции...
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru