( TCH | 2020. 09. 25., p – 14:20 )

> Csak úgy mondom, hogy a számítás intenzív részeket nem a magas szintű nyelvekben szokták implementálni.

Ezt én is tudom. Nem erről volt szó.

> Példa: írsz egy C++ mátrix könyvtárat. Szépen overload-olod a [] operátorokat ahogy kell, hogy csináljon range checket. Ízlés kérdése, hogy out-of-range-nél exception vagy default value visszaadás, de akkor gondolj bele, hogy egy generic mátrix szorzás így megvalósítva mekkora overhead.

Micsoda? Egy plusz elágazás? Csak maga a szorzás, mint művelet többet fog enni...

> És miért kellene a hozzáférés operátornál range check? Amikor a szorzást meghívod, akkor lecsekkolod egyszer, rendben van, mész tovább. Persze csinálhatsz egy []_unsafe-et, ami nem check-el, és akkor ugyanott vagyunk, mint a fent kifogásolt soroknál. Hogy a valaminek a szub_függvénye nem csinál range check-et.

Mert a range megváltozhat menetközben? Esetleg? Kitörölsz a tömbből, hozzáadsz, stb.

> (hozzáteszem, nem ellenőriztem hogy a fenti függvényt milyen kontextusban használják)

geleinek már mutattam hozzá kontextust.