Ja to vidim jednoduse - mit double jako default je bezpecnejsi reseni pro takove to programovani pro sebe.
Dle meho nazoru existuje mnoho programatoru - laiku, kteri do reprezentace promenne bud nevidi, nebo se nad tim proste nezamysli (napriklad uz jen to, ze u floatu je diskretizacni krok nekonstantni, mate spoustu lidi: ma float, podiva se jak presne reprezentuje cislo kolem nuly, rekne si, ze to staci. A chyba lavky!)
Ja vim, ze je to na prvni pohled jasne, ale plynou z toho dalsi komplikace - napriklad nerovnomerne rozlozeni diskretizacniho sumu zpusobi, ze u mnoha statistickych estimatoru, jako je treba (zakladni) kalmanuv filter, nejsou splneny zakladni podminky, nebot sum soustavy se predpoklada "zero-mean gaussian"). Pouzitim double se tyto problemy casto neprojevi (diskretizacni sum je casto zanedbatelny) a tak to proste funguje. Casto se potom pri prakticke implementaci prejde na single a jeje - ono to nefunguje - proc?
Otazka je, co je lepsi - vyresit problem konceptu pri uvodnim navrhu, nebo pri implementaci? Za mne by toto mely resit coding standards daneho tymu. Co Ti brani explicitne deklarovat single nebo double, jeste lepe pak neco jako float32_t a float64_t? Pokud se o to nezajimas, neni lepsi Ti defaultne poskytnout reseni, s nimz prichazi mene problemu?