[LHC] Ainda sobre memória do Arduino, evitando o "new"

Alejandro Mesias ale.mesias at gmail.com
Tue Feb 23 11:28:25 PST 2016


Minha dúvida é se ele vai chamar o destrutor, não apenas se vai destruir :D
Que preciso que execute o destrutor, claro que é rápido testar isso.

Se vai executar o:  o1.~Objeto()   ou o instancia.~Blarg();


Em 23 de fevereiro de 2016 16:10, Paulo Costa <me at paulo.costa.nom.br>
escreveu:

> A grande vantagem de instanciar na pilha em C++ é que os objetos são
> destruídos automaticamente, assim que a variável sai de escopo (Na ordem
> contrária em que foram declaradas).
>
> Além de liberar memória, isso pode ser usado para reservar/liberar
> recursos automaticamente (Equivalente ao "with" em Python e
> try-with-resources em Java -- Um exemplo: lock_guard
> <http://www.cplusplus.com/reference/mutex/lock_guard/>)
>
> int foo() {
>   Objeto o1;
>   if (true) {
>     Objeto o2, o3;
>     //Destroi o3
>     //Destroi o2
>   }
>   //destroi o1
> }
>
> Em 23 de fevereiro de 2016 15:51, Alejandro Mesias <ale.mesias at gmail.com>
> escreveu:
>
>> Valeu paulo, isso mesmo. Encontrei em outro site um pouco depois.
>>
>> Tenho uma factory em um método estático da classe. Quando fiz pareceu
>> lindo, deu várias dores de cabeça pra deixar redondo na época,  preciso
>> limpar outras coisas no destrutor. Mania de OO e patterns.
>>
>> Falta agora descobrir se quando o compilador libera o objeto ele chama o
>> destrutor ou se preciso fazer isso manualmente, capaz que manualmente.
>>
>> Em 23 de fevereiro de 2016 15:47, Paulo Costa <me at paulo.costa.nom.br>
>> escreveu:
>>
>>> Fica parecido com isso:
>>>
>>> class Blarg{
>>>> public:
>>>>     Blarg(const char*, int);
>>>> };
>>>
>>>
>>>
>>> Blarg instancia("meh", 56);   //Cria o objeto em variável global ou na
>>>> pilha
>>>
>>>
>>> _______________________________________________
>>> Lista do LHC <http://lhc.net.br>
>>> HSC at listas.tia.mat.br
>>> http://listas.tia.mat.br/listinfo.cgi/hsc-tia.mat.br
>>>
>>>
>>
>>
>> --
>> ======================================
>> Alejandro Mesias André Nebra Perez
>> Java/Python/Js/Something else Developer
>> Twitter: @meszias
>> Linux User #442506
>> Campinas - SP - Brasil - South America
>> ======================================
>>
>> _______________________________________________
>> Lista do LHC <http://lhc.net.br>
>> HSC at listas.tia.mat.br
>> http://listas.tia.mat.br/listinfo.cgi/hsc-tia.mat.br
>>
>>
>
> _______________________________________________
> Lista do LHC <http://lhc.net.br>
> HSC at listas.tia.mat.br
> http://listas.tia.mat.br/listinfo.cgi/hsc-tia.mat.br
>
>


-- 
======================================
Alejandro Mesias André Nebra Perez
Java/Python/Js/Something else Developer
Twitter: @meszias
Linux User #442506
Campinas - SP - Brasil - South America
======================================
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://listas.tia.mat.br/pipermail/hsc-tia.mat.br/attachments/20160223/28b3fb9d/attachment.html>


More information about the HSC mailing list