170 похожих чатов

Template <class T> class addable { // Assuming T = std::vector<int>, U

= int
template <class U>
std::enable_if_t<std::is_same_v<T, std::vector<U>>, T>
add(U val) {
...
}

// Assumeing T = int, U = int
template <class U>
std::enable_if_t<!std::is_same_v<T, std::vector<U>>, T>
add(U val) {
...
}

};

int main() {
assert(addable<int>{2}.add(3) == 5);

std::vector<int> v1 {1, 2, 3};
std::vector<int> v2 {11, 12, 13};
assert(addable<std::vector<int>>{v1}.add(10) == v2);
}
А разве сигнатуры ф-й не будут следующими ? (смотреть ассерты)
// int add(int val);
// std::vector<int> add(int val);

Нельзя же перегружать ф-ю только по return type. Значит я ошибаюсь, но где ?

2 ответов

7 просмотров

Это не перегрузка по return type, у шаблона функции сигнатура содержит и return type

Собственно свиная отсекает одну из двух, так что компилятор никогда не стоит перед выбором из версий

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

Обсуждают сегодня

Кстати, а я вот тут подумал. Допустим, у нас имеется цикл который выполняет огромное количество итераций, но мы хотим, чтобы какие-то действия исполнилось только один раз. В Я...
The Bird of Hermes
23
Доброй ночи. Вопрос знатокам. Имеется некая таблица, результат которой выведен в DBGrid на форме. И есть форма, с помощью которой можно как добавить запись, так и отредактиров...
Евгений
28
а всё почему? потому что ассемблер в отличии от яву порождает множество пагубных привычек, среди которых например можно отметить использование глобальных переменных для всего ...
Mixail Frolov
35
анрей С какой целью зашёл?
КТ315
42
я часов 15 назад начал пытаться написать хоть что-то напоминающее ос и у меня есть проблема, которую я пытаюсь решить последние часов 5: есть крч 2 исходника с минимальным код...
Al1to
17
@not_fajox С какой целью зашёл?
КТ315
9
Короче получается только кнопки не поменять А кнопки вроде тоже слетают при редактировании не?
inc.
10
Кто нибудь из участников чата пишет на ассемблере под GNU/Linux?
Spiker01
24
коллеги, добрый вечер! А никто не знает как модальная форма может себя закрыть? Ну допустим модальная форма определила, что смысла ей работать нет и хочет вернуть modalResult...
Михаил
83
Всем привет ребят! Мб кто-то сталкивался? adminСomponents .get("searchСomponents", use: searchComponents) .openAPI( summary: ...
Admin Adminov
2
Карта сайта