C ++ 14 Общие лямбды в заголовочном файле

У меня есть множество функторов, таких как следующие:

const auto add = [](const auto& x) {
return [=](const auto& n) { return n + x; };
};

Правильно ли хранить их в заголовочном файле? (есть побочные эффекты?)

3

Решение

Вы можете хранить их в заголовке без каких-либо проблем. Если у вас одна и та же функция с одинаковыми аргументами, это может вызвать проблемы, но если у вас разные имена или аргументы, она перегружается и не имеет проблем.

Что касается conts, они могут храниться в заголовках, чтобы потом использовать их в разных программах. Так же, как функции, вы можете использовать константу (определенную вами), когда вам это нужно.

В качестве «побочных эффектов» я бы сказал, что вы можете включить заголовок в другой файл и использовать свою функцию без необходимости ее повторного объявления.

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]