Какая типичная ошибка при работе с function template и как ее избежать?

C/C++MiddleШаблоны и generic programmingОшибка кандидаташаблоны и generic programming|templates|function template|c++|c

Что хотят услышать интервьюеры:

Частая ошибка: создавать сложную template magic без читаемых constraints и нормальных сообщений компилятора.

Ответ:

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

На собеседовании: полезно назвать симптом — segfault, leak, UB, data race, deadlock, ABI break или деградация производительности.

template<class T> T max(T a, T b) { return a > b ? a : b; }

Источники

Похожие вопросы