thejoeejoee / IFJ-VUT-BIT-2017-2018

Repository for program interpret of custom language IFJ2017 written in C tested under Google tests.
GNU General Public License v3.0
2 stars 3 forks source link

Alokace/Dealokace #45

Closed aroidzap closed 7 years ago

aroidzap commented 7 years ago

Rád bych zavedl pravidlo, že budeme párovat malloc/free a vlastní funkce init-malloc/vlastní free. Nikoliv však vlastní init-malloc/free.


BLBÝ:

rendered = code_instruction_render(instruction);
memory_free(rendered);

LEPŠÍ:

rendered = code_instruction_render(instruction);
code_instruction_render_free(rendered);
SonyPony commented 7 years ago

vzhledem k tomu, že to vrací char*, tak bych používal memory_free, protože to prostě není nějaká specializovaná struktura, tak nevidím důvod, proč by to mělo mít specializovaný free.

aroidzap commented 7 years ago

To byl příklad... ale i tak nevíš, jestli si třeba funkce code_instruction_render nepřetypuje char* na strukturu s něčím vevnitř alokovaným... :D já vím, pravděpodobně ne, ale nemůžeš nikomu věřit :D ... jako jak chcete, jen prostě že když mám specializovaný "init" tak instinktivně hledám i specializovaný "free". To je ta pointa.

thejoeejoee commented 7 years ago

Myslím, že jsme společně dořešili.