[LHC] Duvida de C, ponteiros

Thiago Crepaldi thiago at thiagocrepaldi.com
Fri May 8 04:53:26 PDT 2015


Como os outros disseram, "referencia" (int &), "cout", "<<" e "::" são
parte do idioma de c++. C não tem nenhuma dessas consturções - infelizmente.

Em particular, acho referência muito bom e mais fácil de usar, já que
acessamos o objeto diretamente, ao invés de ter que dereferenciar um
endereço no qual ele se encontra. Por conta disso, "objeto.blablabla"
sempre existe, sem risco do "objeto" ser nulo. A checagem de tipo de
referencia é muito mais forte do que a de ponteiros tb

2015-05-08 8:16 GMT-03:00 Gabriel Hidasy <gabrielhidasy at gmail.com>:

> Pelo que eu testei é syntax sugar, o efeito é o mesmo, mas sem precisar
> enviar explicitamente o endereço e dereferenciar dentro da outra função.
>
> void mudaValor(int & valor){
>     valor = 5;
> }
>
> int meuInteiro = 0;
>
> mudaValor(meuInteiro);
>
> printf("Meu novo valor é: %d", meuInteiro");
>
> Resultado >> Meu novo valor é: 5
>
> Mas não compilou como C, só como C++.
>
> IMHO isso cria ainda mais possibilidades de side effects inesperados e
> malvados
>
> 2015-05-08 4:28 GMT+02:00 Gabriel Krisman Bertazi <gabriel at krisman.be>:
>
>> Fabio Mello <fabiohmello at gmail.com> writes:
>>
>> > opa, não sei se isso existem em c, mas em c++ isso indica que o
>> > parâmetro é uma referência para o objeto, e não um ponteiro.
>>
>> Referencias deste tipo não existem em C, só em C++.
>>
>> > não usei isso na prática, mas acredito que vc acessaria como
>> > obj.method() em caso de referência e como obj->method() em caso de
>> > ponteiro.
>> >
>> > tbm não existe aritmética de referências como existe a de ponteiros,
>> > como p++ para apontar para o próximo elemento.
>>
>> Isso.  A referência praticamente  "amplia o escopo" da variável
>> referenciada para dentro da função ou método que a recebe.
>>
>> Na prática é mais uma das infinitas coisas bloated e replicadas de C++
>> que obscurecem ainda mais o código.  Claro que na minha opinião. :)
>>
>> Algumas explicações e uma certa crítica:
>>
>> http://yosefk.com/c++fqa/ref.html
>>
>> --
>> Gabriel Krisman Bertazi
>>
>> _______________________________________________
>> 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
>
>


-- 
Thiago
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://listas.tia.mat.br/pipermail/hsc-tia.mat.br/attachments/20150508/25e05a29/attachment.html>


More information about the HSC mailing list