Ошибка в функции | C++

218
02 мая 2017, 07:31
int framed_area(int x,int y)
{
    const int frame_width=2;
    if (x-frame_width<=0||y-frame_width<=0)
    {
        error("non-positive area() argument called by framed area");
    }
    return area(x-frame_width,y-frame_width);
}

Если у меня есть эта функция в моей программе, я получаю сообщение "'error' was not declared in this scope". Какую библиотеку следует включить, чтобы мой код работал правильно?

Answer 1

У вас компилятор к моменту компиляции кода не встретил объявления функции error() - возможно, вы не включили соответствующий заголовочный файл, или объявляете его в тексте ниже.

Что касается замечания @Duracell об именах - то, по всей видимости, он не совсем разобрался в вашем коде. Все остальное у вас корректно, если, конечно, определена функция area().

Условие

x-frame_width<=0||y-frame_width<=0

вполне корректно, так как приоритет вычитыния выше сравнения, а тот, в свою очередь, выше приоритета оператора ИЛИ.

P.S. Где-то я этот код видел - в какой-то книжке... Не Страуструп, "Принципы программирования"? Если да - то, насколько я помню, он там все свои функции засунул в один заголовочный файл. Вы его включаете в свой текст?..

READ ALSO
Ошибка в Qt: During startup program exited with code 0xc0000135

Ошибка в Qt: During startup program exited with code 0xc0000135

Программа падает в Qt после того как я начинаю в ручную записывать библиотекуТ

333
Циклический сдвиг элементов матрицы

Циклический сдвиг элементов матрицы

Нужно осуществить циклический сдвиг элементов квадратной матрицы размерности MxN вправо на k элементов таким образом: элементы 1-й строки...

633
Работа с QSortFilterProxyModel

Работа с QSortFilterProxyModel

Есть QStringListModel и QSortFilterProxyModel с соответствующими представлениями, а также QLineEditтакже есть:

290
Сортировка множеством

Сортировка множеством

У меня есть некоторая неупорядоченная последовательность пар целых чисел std::pair<int, int>Если все элементы этой последовательности добавить...

231