"
c = a * b;
Ez lehet egy sima integer vagy floating-point szorzás C-ben"
Jó de melyik? Mert ugye nem mindegy. Honnan tudod, hogy melyik? Onnan, hogy megnézed a, b, és c típusait.
(BTW simán lehet itt még konverzió is, akár 3 db is, ha a három változó nem egyforma típusú.)
Ugyanez van C++-ban. Ha látod, hogy mik a típusok, tudod mi fog történni. Nincs itt semmi meglepetés, még csak nem is történik más mint 3 int esetében...
"
f(a);
C++-ban lehet, hogy több függvényt is meghív (másoló konstruktor pl.)."
Megint csak nem történik semmi csoda, vagy rendkívüli, C-ben is meghívódik a másoló konstruktor (akár egy egész struct lemásolódik ha nem vigyáz az ember), sőt konverzió is történhet.
Az új dolog a C++-ban, hogy a saját típusok is tudnak úgy működni mint a beépítettek, és nem kell nekik külön elbánás.
"...handing C++ to the average programmer seems roughly comparable to handing a loaded .45 to a chimpanzee." -- Ted Ts'o