Re[10]: Carbon
От: so5team https://stiffstream.com
Дата: 03.04.24 04:23
Оценка: -1
Здравствуйте, CreatorCray, Вы писали:

CC>Приходится?


Да.

CC>И кто же тебя заставляет так писать кроме твоего хронического пуризма?


Типы данных, которые ХЗ что из себя представляют. Типа:
auto keys = std::views::keys(some_container);

или:
auto parser = produce< authorization_value_t >(
         token_p() >> to_lower() >> &authorization_value_t::auth_scheme,
         maybe(
            repeat( 1, N, space() ),
            produce< auth_param_t >(
                  alternatives( token68_seq, params_seq )
            ) >> &authorization_value_t::auth_param
         )
   );

или совсем уж примитивное:
void f() {
  ...
  const auto inner_func = [&](int v) { ... /* do something with v */ };
  ...
}


CC>Я, когда только auto появилось тоже попробовал так делать но быстро перестал ибо код становится просто отвратительным.


Ну что поделать, если руки кривые. Да еще и за всех не отучились говорить.

S>>Ну да. И в общем случае начинать описание локальных переменных с var лучше, чем с имени типа.

S>>
S>>std::vector<some_type>::const_iterator start = v.begin();
S>>

CC>А вот какого хрена тут auto нету?

Потому что это пример. Нет мозгов это понять, давайте я вам другой пример напишу, в котором типы опускать не получается (из текущего проекта, но слегка изменен):
mdx::expression_tree::abstract_cell_provider_uptr provider = std::make_unique<mdx::expression_tree::cell_providers::distinct>(...);
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.