nur nochmal wegen der frage: pointer oder reference.
es gibt ienen einfachen unterschied: pointer != reference.
ein pointer zeigt auf ein objekt; waehrend eine reference eine art alias fuer eine objekt ist.
references muessen beim erstellen einem objekt zugewiesesn werden, d.h. sie sind immer gueltig ( nicht wie zeiger ). nach der zuweisung kann man die reference keinem anderem objekt zuweisen.
ein pointer ist, wie der name schon sagt, ein zeiger. und man kann all das machen, was man von einem zeiger erwarten wuerde ( zeigerarithmetik, etc. ).
bei der performance gibt es doch einen unterschied. man nimmt immer ein const reference ( keine pointer ihr cler
).
const deshalb, damit der optimierungs part vo compiler zusaetzlich optimieren kann, da wenn er weiss, dass nicht geschrieben wird, sonder nur gelesen, so kann er weitere optimiereungen ( hinsichtlich geschwindigkeit, nicht speicherplatz ... ) durchfueheren.
eine reference, da diese bei zugriff nicht dereferenziert werden muss. und ja, dereferenzieren kostet die cpu kraft. hoffe, dass ich auch was ( konstruktives ) beitragen konnte.
mfg,
google.com