Как использовать оператор C++ Expects?C++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Как использовать оператор C++ Expects?

Сообщение Anonymous »

Я начинаю проект с использованием C++, который раньше не использовал, за исключением нескольких школьных проектов, и это далеко не тот объем, которым я занимаюсь сейчас.

Моя цель — стараться изо всех сил следовать основным рекомендациям C++, работая над тем, чтобы избегать ошибок, повышать производительность и, самое главное, улучшать удобство сопровождения моего кода.

Я сталкивался с буквально сотнями проблем, начиная от неправильных версий g++/Clang++ и неспособности найти стандартные библиотеки до использования g++ неправильной версии C++ для компиляции и заканчивая очень простыми функциями, которые не ведет себя так, как ожидалось - а я даже не начал изучать автоинструменты, поэтому ожидаю, что последует еще много головной боли.

Этот вопрос Однако это относится только к одной части C++ Core Guidelines. Интерфейсы 6: Предпочитаю Expects() для выражения предварительных условий

Я попробовал написать следующий простой код:

Код: Выделить всё

#include 

using namespace std;

int square(int x) {
Expects(x > 0);
return x * x;
}

int main() {
cout  0);
^~~~~~~
-> [1]
Я тоже пробовал использовать Clang, но у него совершенно другая (и несвязанная) проблема:

Код: Выделить всё

$> clang++ -x c++ main.cpp
main.cpp:1:10: fatal error: 'iostream' file not found
#include 
^~~~~~~~~~
1 error generated.
-> [1]
Я еще не придумал, как это исправить, поэтому не буду этим заморачиваться.

Подробнее здесь: https://stackoverflow.com/questions/545 ... s-operator
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»