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

Какой вариант оформления функции лучше? - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Составить функцию, принимающую переменное количество параметров http://www.cyberforum.ru/cpp-beginners/thread1227230.html
Напишите и протестируйте шаблонную функцию с переменным числом аргументов sum_values(), которая принимает список произвольной длины с аргументами, имеющими числовые значения (смешанных типов), и возвращает сумму в виде значения long double. Помогите пожалуйста составить функцию или приведите пример шаблонной функции с переменными аргументами и образец ее вызова. Заранее спасибо.
C++ Как научиться программированию на С++ Как научиться программированию на С++, как за месяц более менее освоить этот язык.программирования. http://www.cyberforum.ru/cpp-beginners/thread1227227.html
C++ Как научиться программированию на С++
Как научиться программированию на С++, как за месяц более менее освоить этот язык программирования. В частности научиться создавать вирусы и другие программы.
Объединение прямоугольников (количество объединенных прямоугольников минимально) C++
Добрый день. Прошу помощи в выполнении задачи. Дан список прямоугольников, которые задаются координатами верхней левой вершины и размерами (ширина, высота) (целые числа). Необходимо объединить пересекающиеся и соприкасающиеся прямоугольники таким образом, чтобы число полученных в результате объединения прямоугольников было минимально. Дополнительно приоритет желательно отдавать прямоугольникам,...
C++ Определить, является ли билет счастливым с помощью рекурсии http://www.cyberforum.ru/cpp-beginners/thread1227172.html
Проверка является ли билет счастливым (123123 - ДА, 123124 - НЕТ) с использованием в решении рекурсии. Хватило только на простенькое решение... #include <stdio.h> #include <iostream> using namespace std; int main() { int number;
C++ Приведение любого двумерного массива к типу указатель на указатель Допустим, есть несколько массивов int arr1; int arr2; int arr3; Какое преобразование нужно сделать, чтобы подобные присвоения были допустимыми? int** arrPtr = 0; подробнее

Показать сообщение отдельно
DrOffset
6461 / 3835 / 886
Регистрация: 30.01.2014
Сообщений: 6,630
14.07.2014, 22:21     Какой вариант оформления функции лучше?
Все таки холивар .

Цитата Сообщение от Kastaneda Посмотреть сообщение
Программист, читая твой код, будет инстинктивно искать return в конце функции и хорошо если это будет единственный return на все тело ф-ции. В противном случае есть шанс, что он пропустит один из многих return'ов.
Если следовать этой логике, то исключения - это зло в последней инстанции.
Я, все же, склонен считать, что это надумано. Я сам имею своих пользователей, и с десяток лет активно работаю с чужим кодом. По опыту могу сказать, что это не такая серьезная проблема, как оно может представляться.

Цитата Сообщение от Kastaneda Посмотреть сообщение
но в больших функциях это правило очень полезн
Больших функций стоит избегать. По разным причинам. Многие люди в принципе сложно воспринимают код, рассредоточенный на пару (иногда десятков), страниц. Тут никакие return в конце не спасут.

Цитата Сообщение от Kastaneda Посмотреть сообщение
Вот здесь есть хорошие примеры, когда это на руку.
В некоторых примерах по этой ссылке противопоставляется хороший код с выносом return в конец функции и плохой код с несколькими return в середине. Чтобы было ясно, я не выступаю против подхода "return в конце" когда это целесообразно. Я лишь против культов.
 
Текущее время: 04:01. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru