Size: a a a

cxx.Дискуссионная

2020 April 06

AZ

Alexander Zaitsev in cxx.Дискуссионная
Egor Pugin
а в чем проблема? объект доживет до точки с запятой
Ой да ща начнет заливать про висячие ссылки
источник

RM

Roy Mustang in cxx.Дискуссионная
Egor Pugin
а в чем проблема? объект доживет до точки с запятой
Прикол в том, что мы не знаем точно есть ли объект или нет
источник

RM

Roy Mustang in cxx.Дискуссионная
HasObject принимает id задачи
источник

RM

Roy Mustang in cxx.Дискуссионная
Можно конечно создавать новый объект и возвращать его, а он помрет после ;
источник

RM

Roy Mustang in cxx.Дискуссионная
Но выглядит порнухой
источник

EP

Egor Pugin in cxx.Дискуссионная
первую проверку сделай, а дальше чейни спокойно
источник

RM

Roy Mustang in cxx.Дискуссионная
Egor Pugin
первую проверку сделай, а дальше чейни спокойно
Это уже указатели придется юзать
источник

RM

Roy Mustang in cxx.Дискуссионная
или bool + ссылки
источник

RM

Roy Mustang in cxx.Дискуссионная
Короче, нет, это хуйня
источник

RM

Roy Mustang in cxx.Дискуссионная
Давайте вернемся к перегрузке, я щас опишу суть задачи
источник

AZ

Alexander Zaitsev in cxx.Дискуссионная
Egor Pugin
первую проверку сделай, а дальше чейни спокойно
Не спорь с ним, это бесполезно
источник

RM

Roy Mustang in cxx.Дискуссионная
Alexander Zaitsev
Не спорь с ним, это бесполезно
Да дело не в этом, я не хочу чтобы вне класса происходил лишний движ
источник

RM

Roy Mustang in cxx.Дискуссионная
Это создаст большие объемы кода
источник

RM

Roy Mustang in cxx.Дискуссионная
Если функция часто вызывается
источник

RM

Roy Mustang in cxx.Дискуссионная
В общем, задача следующая: есть функция, которая должна по ID задачи изменять ее поля
bool ChangeTask(const uint64_t id, const uint32_t time_ms = UINT32_MAX, const uint16_t count = UINT16_MAX/* 0 = infinity */);

В данный момент я подумывал о том, чтоб использовать значение -1, как параметр игнорирования аргумента, чтобы не делать перегрузку, иначе их 3 получится (это не плохо, и не хорошо)
источник

RM

Roy Mustang in cxx.Дискуссионная
Еще одна идея была использовать шаблонную функцию, но там хз как проверить игнорится ли параметр шаблона или нет
источник

RM

Roy Mustang in cxx.Дискуссионная
Ладно, выберу перегрузки, избавлю себя от нужды делать лишние if'ы
источник

o

osm1um in cxx.Дискуссионная
Roy Mustang
В общем, задача следующая: есть функция, которая должна по ID задачи изменять ее поля
bool ChangeTask(const uint64_t id, const uint32_t time_ms = UINT32_MAX, const uint16_t count = UINT16_MAX/* 0 = infinity */);

В данный момент я подумывал о том, чтоб использовать значение -1, как параметр игнорирования аргумента, чтобы не делать перегрузку, иначе их 3 получится (это не плохо, и не хорошо)
Странный вопрос...

Если у тебя есть больше количество task'ов, которые нужно добавлять/изменять/удалять, то создай простейший singleton, организуй в нём storage который будет возвращать ссылки на task'и.
источник

o

osm1um in cxx.Дискуссионная
Фильтр можешь на лямбдах построить...
источник

RM

Roy Mustang in cxx.Дискуссионная
osm1um
Странный вопрос...

Если у тебя есть больше количество task'ов, которые нужно добавлять/изменять/удалять, то создай простейший singleton, организуй в нём storage который будет возвращать ссылки на task'и.
У тебя есть ID задачи, но ты не знаешь, есть ли эта задача в списке или её нету
источник