Здравствуйте, kov_serg, Вы писали:
_>То есть такие названия несомненно короче:
_>_>?add@@YAHAEBV?$vector@HV?$allocator@H@std@@@std@@@Z
_>?add@@YAMAEBV?$vector@MV?$allocator@M@std@@@std@@@Z
_>
Ну как там манглится все это под капотом меня должно интересовать только на границе модулей. Но в С-то я вынужден это делать каждую минуту, причем в ручном режиме. В библиотечном коде у меня всегда куча разных типов выполняющих семантически одну и ту же операцию. Потом перегрузка это же не только автоматически выбор имени метода, это автоматически расширяемый код. Интерфейс библиотеки не стоит же на месте. Там непрерывно появляются новые типы, новые методы. Я, честно, вообще не представляю как на С делается такое:
допустим есть уже куча готового кода и нужно сказать — делай вот все-все на 99% тоже самое, но вот с этим новым типом — вот так...
На С++ просто делается перегрузка и все, компилятор сам подставит нужный новый метод, а остальное трогать не нужно.