_
Ладно, напишу свою версию. Если у тебя есть функция которая должна выводить объект в виде строки, можно объявить ее как
void printObj(const Stringable& obj) { std::cout << obj.toString(); }
А тип Stringable в объявлении функции это интерфейс, который говорит, что у объекта точно есть функция toString. Т.к. его имплементирует
В таких языках как ruby такого нет, так называемая утиная типизация, там в самой функции проверка идет obj.respond_to?("toString") которая проверяет что у объекта есть такой метод
Спагетти код, очевидно же
Ты прав
Соседнее государство?
С Пикабу?
А за 400 лайков?
Руперт жеш
-У нас есть дома
-Хидден гем дома