Milloin ja missä minun tulisi mieluummin suositella ' std:: nearbyint ' std:: round?


paras vastaus

std :: nearbyint yli: pyöristää kelluvan -piste-argumentti arg kokonaislukuarvoksi liukulukuisena käyttämällä nykyistä pyöristystilaa .

std :: round : Laskee lähimmän kokonaisluvun arvon arg (liukulukuisena) , pyöristetään puolitapaukset poispäin nollasta riippumatta nykyisestä pyöristystilasta.

Joten siinä on ero. Jos haluat käyttää muuta pyöristystilaa kuin mitä std :: round käyttää, käytä std :: nearbyint (tai std :: rint , ne ovat lähes identtisiä) .

Huomaa, että vaikka valitsisitkin FE\_TONEAREST, siinä on ero: std :: nearbyint / std :: rint pyöristää puolivälissä olevat tapaukset tasaiseksi, kun taas std :: pyöristää pois nollasta.

Vastaa

Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *