Обновить
3

Разработчик

4
Подписчики
Отправить сообщение

Не надо ёрничать. Проблема не в обобщениях как таковых, а в применении их не по назначению. Есть языки с работающими type traits, в которых не возникает этой каши. И есть языки с вменяемым метапрограммированием через квази-цитирование.

$100

Любой каприз за Ваши деньги

Да я в курсе в общем-то. Тег sarcasm потерялся.

И тестировать они его будут как последние обновления?

Все сайты равны, но некоторые равнее?

Ещё можете попробовать live образ какого-нибудь свежего linux и посмотреть, как он будет себя вести.

По-моему, без качественного контента и без учета мнения игроков никакой маркетинг не поможет…

И тем не менее на мобильном рынке доминируют всяческие весёлые рейды.

Подскажите, а где в этих советах можно найти "качественный контент", "buy-to-play", мнение игроков? Может пусть маркетоиды сами своё сами знаете что и кушают? Последней годной игрой за фикс. ценник, что я видел, были две части Monument Valley. А всякие там рейд донат леджендс могут катиться в бездну.

Ваш текст не проходит упомянутую в нём же проверку на 1 секунду внимания. С первых строк было понятно, что это будет конспект выступления дяденек в дорогих пиджаках, состоящий из общих фраз. Какие конкретно шаги были предприняты? Какие результаты они дали?

Ещё помню старичка Colobot, но она была скорее про программирование.
Ещё Space Engineers есть и Kerbal Space Program.

Я имею ввиду разделение на Hasher и Hashable, что-то вроде такого


// Хешер, считает хеш
template<typename T>
concept Hasher = requires(T a) {
    { T::hash_type; }
    { a.hash() } -> std::convertible_to<T::hash_type>;
    { a.append(std::span<std::byte>{}) };
};
// Тип, который можно хешировать
template<typename H, typename T>
concept Hashable = Hasher<H> && requires(H h, T t) {
    { append_hash(h, t) };
    // ... или ...
    { t.hash(h); }
};

// ... где-то в коде
struct Foo {
    int first;
    int second;
};

template<Hasher H>
void append_hash(H& hasher, Foo const& foo) {
    append_hash(hasher, foo.first);
    append_hash(hasher, foo.second);
}

int main() {
    Foo foo { 21, 42 };
    std::hasher hasher;
    append_hash(hasher, foo);
    std::cout << "The hash of Foo { 21, 42 } is " << hasher.hash() << "\n";
    return 0;
}

Т.е. тип объявляет только какие байты и как участвуют в хеше — но не как считается хеш. А хешер — как хеш считается из байт, но не откуда и как эти байты берутся.

Подскажите, а обсуждалась ли в контексте std::hash возможность отделить описание в объекте что хешировать от конкретного хешера?

Ничто, наверное, не мешает и не заставляет. Я сам давно бросил это дело, так что не в курсе.

Тем, что плексы ещё надо сбыть :) До сих пор жива байка о том, как суициднули какого-то очень наивного человека с полным трюмом плексов на выходе из Житы.

Было бы неплохо вот эту вот модульность, контейнерность и быстрые апдейты в обычную 10ку — за вычетов очередных безумных экспериментов c UI. Заодно уменьшив прожорливость оной.

Безотносительно качества SAP, в приведённой вами статье автор в основном брызжет слюной, а не аргументирует почему SAP плохой. Получается такая себе анти-антиреклама.

Это правда, что оно весит 40Мб? Если так — встаёт вопрос, что ещё они туда понапихали.

Справедливости ради, те кто предлагал патчи вели себя адекватно. Фразу кинул какой-то идиот, первую и последнюю.

Copy method как раз несложно внедрить для нового кода. Да и для старого можно, пометив использование копирующих конструкторов как deprecated.
А вот разрушающее перемещение сломает слишком многое. Я уже выше писал, что семантика "владения" в С++ натянута поверх C PODs.
По поводу доживёт или нет — вопрос слишком холиварный. Моё мнение — будет как минимум занимать значимую часть рынка, а то и останется доминирующим. Легаси, база наработанных знаний, рынок спецов, привычки в конце концов.

Информация

В рейтинге
Не участвует
Откуда
Украина
Зарегистрирован
Активность