002
27.12.2012, 08:27 Uhr
ao
(Operator)
|
Hmmm.....
in der C++-Standardbibliothek gibts sqrt-Überladungen für float, double und long double, aber nicht für Ganzzahltypen. Bei Zuweisung des Ergebnisses an eine Integer-Variable muss entweder explizit gecastet werden, oder man muss mit Compilerwarnungen rechnen ("precision loss" oder so ähnlich).
Das Konstrukt oben würde das verhindern. Allerdings könnte man dasselbe auch erreichen, indem man im globalen Namespace weitere Überladungen von sqrt mit den gewünschten Datentypen baut - das wäre um einiges einfacher. Oder geht das nicht aus einem Grund, den ich grad nicht sehe? |