170 похожих чатов

Можно ли использовать тип данных auto в серьезном коде?

19 ответов

4 просмотра

Нужно. Ибо auto серьёзно снижает когнитивную сложность и при разработке и при чтении кода. В тоже время, злоупотреблять им не стоит, поскольку чрезмерное его использование вызывает у программиста вопросы о природе тех или иных объектов.

auto использовать можно и нужно в том случае, когда из правой части выражения однозначно понятно, какой тип будет в левой части, например auto user = std::make_unique<User>();

Till Schneider
auto использовать можно и нужно в том случае, когд...

Или, напротив, не понятно какой там тип справа тоже использовать: std::vector<int> v; auto it = v.begin();

Очень аккуратно. При изобиловании ауто в какой то момент сам перестаешь понимать что тут должно быть. ИДЕ виснуть начинает. Рефакторинг начинает быть малопредсказуем. Короче, всегда если не в лом лучше писать тип. Это правило не касается шаблонов на ауто специально построенных.

Нужно

netricks
Нужно. Ибо auto серьёзно снижает когнитивную сложн...

А по мне так авто наоборот повышает когнитивную сложность. Так как очень часто программисты не могут остановиться и просто используют авто везде. Читать такой код сложнее

Anatoly Shirokov
Или, напротив, не понятно какой там тип справа тож...

лучше бы этого примера там не было) итератор вполне явный тип справа) а вот применение auto в шаблонном коде иногда действительно полезно, так как там проще написать auto, чем выводить тип возвращаемого значения

Till Schneider
лучше бы этого примера там не было) итератор впол...

итератор вполне явный тип справа Ага, особенно в случае условного boost::multi_index_container

Stas
У меня телефон

Ревью кода на работе делаешь с мобилы?

Dmitriy [Отпуск]
В Бусте так не принято

Соболезную * мем со свечкой *

feedable
база

Почему ты постоянно пишешь "база". Что ты этим хочешь сказать?

Stas
Почему ты постоянно пишешь "база". Что ты этим хоч...

Ну посмотрел человек видео с базой, ну что ты ему лишнюю когнитивную нагрузку создаёшь?

Похожие вопросы

Обсуждают сегодня

я не магистр хаскеля, но разве не может лейзи тип конвертнуться в не-лейзи запросив вычисление содержимого прям при инициализации?
deadgnom32 λ madao
100
короче сгенерила мне эта штука код на ассемблере: struc string val { common local .value dq .value .value: if ~val eq db val end if db 0 } fo...
Vi Chapmann Chapmann
12
Всем привет! Массив вводится с клавиатуры, кол-во элементов неизвестно, поэтому я указал arr db 100 dup(?) С нахождением максимума проблем нет, а вот минимум почему-то всегд...
En Vind Av Sorg
11
Помогите, пожалуйста, делаю программу для для подсчёта корней квадратного уравнения, знаю, что есть куча недочётов, недоработок, но основная проблема в том, что почему-то при ...
NYC
13
#include <stdio.h> int main(void) { int n; scanf("%d", &n); int digits1[n] = {0}; int digits2[n] = {0}; я не могу таким образом заранее массив нулями заполнить?
Linus
12
в сях есть множество как в питоне? для удаление дубликатов
Linus
25
читать файл максимально быстро? странный вопрос))
zamtmn
53
я про форму записи. смысл указывать что 8 байтный регистр 8 байт?
Aiwan \ (•◡•) / _bot
10
Вроде бы вопрос уже заезжанный, но тем не менее У меня есть функция menu() которая выводит набор возможных действий, а затем спрашивает у пользователя что он хотел бы сделать....
David Golovatin
3
а как бы вылезти из ИО, что то типа IO -> Ether или в какую сторону смотреть ? что то туплю
Fedor
14
Карта сайта