LINUX.ORG.RU

История изменений

Исправление Manhunt, (текущая версия) :

entities.erase(std::remove_if(entities.begin(), entities.end(), [&entity](Entity other) {
return entity == other;
}), entities.end());


Да, c++ ублюдский язык, в том числе потому, что описание логики на нём замусоривается бесполезным бойлерплейтом. Однако в rust по сравнению с c++ читабельность кода ещё снизили. Как заглянешь в него - блевать хочется.

Кстати, твой пример можно записать без лямбд, будет капельку лучше:

v.erase(std::remove(v.begin(), v.end(), entity), v.end());


PS Капельку лучше, но всё равно, конечно, больная на всю голову хрень.

Исправление Manhunt, :

entities.erase(std::remove_if(entities.begin(), entities.end(), [&entity](Entity other) {
return entity == other;
}), entities.end());


Да, c++ ублюдский язык, в том числе потому, что описание логики на нём замусоривается бесполезным бойлерплейтом. Однако в rust по сравнению с c++ читабельность кода ещё снизили. Как заглянешь в него - блевать хочется.

Кстати, твой пример можно записать без лямбд, будет капельку лучше:

v.erase(std::remove(v.begin(), v.end(), entity), v.end());


PS Немного лучше, но всё равно, конечно, больная на всю голову хрень.

Исходная версия Manhunt, :

entities.erase(std::remove_if(entities.begin(), entities.end(), [&entity](Entity other) {
return entity == other;
}), entities.end());


Да, c++ ублюдский язык, в том числе потому, что описание логики на нём замусоривается бесполезным бойлерплейтом. Однако в rust по сравнению с c++ читабельность кода ещё снизили. Как заглянешь в него - блевать хочется.

Кстати, твой пример можно записать без лямбд, будет капельку лучше:

v.erase(std::remove(v.begin(), v.end(), entity), v.end());