Как стать автором
Обновить
-9
0.1
Денис @NotSure

Пользователь

Отправить сообщение

Оригинальный заголовок статьи (I Have No Constructor, and I Must Initialize) отсылает к названию рассказа Харлана Эллисона "I Have No Mouth, and I Must Scream", и перевести его стоило бы не в таком стиле, как у вас.

Представьте, если бы название рассказа переводили бы как "Рта у меня нет, а кричать надо" (название совпадает с завершающими словами рассказа, где сверхразумный военный ИИ уничтожил человечество и пытает последнего человека).

https://ru.wikipedia.org/wiki/У_меня_нет_рта,_но_я_должен_кричать

Клиентский код не всегда может вызывать конструкторы -- например, мы можем хотеть иметь возможность подменять тип создаваемого объекта или клиентский код может не иметь значений параметров. В данном же случае фабрике из клиента передаётся и тип, и параметры. Точнее, ID типа, но он взаимно однозначно соответствует типу.

Для выноса бойлерплейта достаточно шаблонной функции в три строчки, а в случае передачи этой фабрики извне я опять же не понимаю зачем.

Возникает следующий вопрос: а как мы можем абстрагировать, отделить способ создания от самого объекта?

У меня возникает другой вопрос: зачем? В какой ситуации код

using VF = VariantFactory<Point, Line, Rect>;
using ShapeType = VF::ResultType;
 ShapeType shape;
 VF{}( &shape, kUniqueId<line>, 1, 1, 4, 5);

будет лучше, чем две строки ниже?

using ShapeType = std::variant<Point, Line, Rect>;
ShapeType shape{std::in_place_type_t<Line>, 1, 1, 4, 5};
 

Кроме дельта-вэ важна ещё и плоскость орбиты, кстати.

Смотреть надо не на километры, а на delta-V (она же характеристическая скорость орбитального манёвра). Нужно примерно 4 км/c дельта-вэ , чтобы перейти от орбиты 450 км на геостационарную. Это меньше половины дельта-вэ, нужной, чтобы добраться до орбиты 450 км.

Я думаю, любой документированный набор инструкций проца проще плюсов.

"каждый проект, с которым я имел дело на C++, ощущался как монотонная рутина"

Значит, автор решал в своих проектах скучные задачи. Когда задача скучная, начинаешь играть с языком, чтобы хоть как-то веселее писать было. Для интересной задачи лучше, когда выражение идей в коде -- тривиальный процесс, а не квест.

Справедливости ради, dllmain триггернулся после комментария с совершенно хамским и не менее надменным скриншотом из твиттера: https://habr.com/en/companies/ruvds/articles/747826/comments/#comment_25755608

Но по сути, это "от перестановки слагаемых сумма не меняется".

Главное, не складывать числа с плавающей точкой)

А зачем std::launder в седьмом варианте? Можно же использовать указатель, возвращаемый new, не?

[[nodiscard]] float int_to_float7(int x) noexcept

{

    return *new(&x) float;

}

Напомнило:
UC Berkeley's online course catalog once listed a physics course where one of the textbooks was written by Landau and Lif****s
Можно сказать и так, дополнив, что она включает и современное положение дел. В этом году как раз вышло новое издание.

Спасибо, возможно, эта книга интереснее, чем The Making of the Atomic Bomb Paperback by Richard Rhodes, которую я тоже пока так и не прочитал)
Безусловно.
Спасибо за ссылку.
Вы, кстати, ответив на этот вопрос, испортили мне аргумент)
Как ни странно, я бы назвал вот эту, задай мне кто-нибудь этот же вопрос: www.palgrave.com/gp/book/9781137573490
Количество переходит в качество)
В какой книге, из вами прочитанных, самый красивый английский язык?
Согласитесь, было бы глупо так считать.
Согласитесь, что есть огромная разница в степени этого непонимания между родным языком и языком, на котором вы читаете «полгода-год». Через десять лет эта разница уменьшится, но для подавляющего большинства людей она останется существенной.
Ну вот как раз после фазы «я понимаю многое» у меня настала фаза «омг, я поди понимаю далеко не всё и даже не знаю, где я не понимаю»)
Вот так: fregimus.livejournal.com/19603.html
Не подтверждают, конечно же, но идентификация чего-то как исключения из правила говорит о том, что есть и правило, которое в целом выполняется.
1
23 ...

Информация

В рейтинге
2 853-й
Откуда
Ярославль, Ярославская обл., Россия
Зарегистрирован
Активность