( geza42 | 2021. 03. 26., p – 15:52 )

Úgy érted malloc hívások számából mínusz a throw-ok számával lesz kevesebb?

Legalább. De ha egy hibát propagálni kell felfelé, akkor lehet, hogy még több if-fel lesz kevesebb. Viszont, ha a new-t használod, akkor egy olyan if se lesz a programodban, ami az out of mem-et ellenőrizné.

Mi van, ha azt is tudni szeretném az exception-ből, hogy konkrétan melyik malloc hasalt el?

Vagy odateszel egy külön try/catch blokkot, vagy azon a helyen azt a new-t használod, amelyik nothrow-os (ebben az esetben akkor nem spóroltál if-et). Vagy becsomagolhatod a malloc()-t, és adhatsz paramétert a csomagoló fv-nek, ami ezt a paramétert beleteszi az exceptionba (vagy épp másik típusú exceptiont dobsz), így később azt le tudod kérdezni.