<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: Ponteiros e referências em C++ parte 2</title>
	<atom:link href="http://blog.blabos.org/2009/05/ponteiros-e-referencias-em-c-parte-2/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.blabos.org/2009/05/ponteiros-e-referencias-em-c-parte-2/</link>
	<description>Qt, Perl, tecnologia e algum blá blá blá</description>
	<lastBuildDate>Tue, 02 Mar 2010 18:44:51 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: Caloni.com.br &#187; Blog Archive &#187; Últimas pesquisas na blogosfera nacional</title>
		<link>http://blog.blabos.org/2009/05/ponteiros-e-referencias-em-c-parte-2/#comment-1811</link>
		<dc:creator>Caloni.com.br &#187; Blog Archive &#187; Últimas pesquisas na blogosfera nacional</dc:creator>
		<pubDate>Fri, 08 May 2009 11:27:13 +0000</pubDate>
		<guid isPermaLink="false">http://blog.blabos.org/?p=578#comment-1811</guid>
		<description>[...] Pointeiros e Referências [...]</description>
		<content:encoded><![CDATA[<p>[...] Pointeiros e Referências [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jorge Pereira</title>
		<link>http://blog.blabos.org/2009/05/ponteiros-e-referencias-em-c-parte-2/#comment-1809</link>
		<dc:creator>Jorge Pereira</dc:creator>
		<pubDate>Tue, 05 May 2009 05:36:30 +0000</pubDate>
		<guid isPermaLink="false">http://blog.blabos.org/?p=578#comment-1809</guid>
		<description>Parceiro Blabos!

Parabéns pelo artigo, MUITO bom!

[]s</description>
		<content:encoded><![CDATA[<p>Parceiro Blabos!</p>
<p>Parabéns pelo artigo, MUITO bom!</p>
<p>[]s</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Wanderley Caloni</title>
		<link>http://blog.blabos.org/2009/05/ponteiros-e-referencias-em-c-parte-2/#comment-1807</link>
		<dc:creator>Wanderley Caloni</dc:creator>
		<pubDate>Sat, 02 May 2009 23:08:30 +0000</pubDate>
		<guid isPermaLink="false">http://blog.blabos.org/?p=578#comment-1807</guid>
		<description>Ingenuidade a minha, é que pensei que já tinha dado o assunto por encerrado quando você disse &quot;Do ponto de vista de Murphy, as referências são feias, chatas e bobas, pois existe pouca coisa potencialmente perigosa a se fazer com elas.&quot; De qualquer forma, já recomendei seu artigo para uma iniciante, pois ele está de fato muito bem explicado para quem está se aventurando pelas diferenças entre C e C++.

Aguardo pelas continuações.

[]s</description>
		<content:encoded><![CDATA[<p>Ingenuidade a minha, é que pensei que já tinha dado o assunto por encerrado quando você disse &#8220;Do ponto de vista de Murphy, as referências são feias, chatas e bobas, pois existe pouca coisa potencialmente perigosa a se fazer com elas.&#8221; De qualquer forma, já recomendei seu artigo para uma iniciante, pois ele está de fato muito bem explicado para quem está se aventurando pelas diferenças entre C e C++.</p>
<p>Aguardo pelas continuações.</p>
<p>[]s</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: blabos</title>
		<link>http://blog.blabos.org/2009/05/ponteiros-e-referencias-em-c-parte-2/#comment-1806</link>
		<dc:creator>blabos</dc:creator>
		<pubDate>Sat, 02 May 2009 15:07:23 +0000</pubDate>
		<guid isPermaLink="false">http://blog.blabos.org/?p=578#comment-1806</guid>
		<description>Caloni, você é um cara muito apressado :)

Sim, você tem toda razão. Mas deixei isso passar de propósito.
Eu também não falei ainda de referências nem ponteiros const, nem nem daquela associação entre ponteiros e arrays, mas vou falar.

Obrigado pelo elogio, é muito motivador.

Abração</description>
		<content:encoded><![CDATA[<p>Caloni, você é um cara muito apressado <img src='http://blog.blabos.org/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Sim, você tem toda razão. Mas deixei isso passar de propósito.<br />
Eu também não falei ainda de referências nem ponteiros const, nem nem daquela associação entre ponteiros e arrays, mas vou falar.</p>
<p>Obrigado pelo elogio, é muito motivador.</p>
<p>Abração</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Wanderley Caloni</title>
		<link>http://blog.blabos.org/2009/05/ponteiros-e-referencias-em-c-parte-2/#comment-1805</link>
		<dc:creator>Wanderley Caloni</dc:creator>
		<pubDate>Sat, 02 May 2009 13:58:09 +0000</pubDate>
		<guid isPermaLink="false">http://blog.blabos.org/?p=578#comment-1805</guid>
		<description>Ótimo artigo!

Infelizmente, as referências não são tão inofensivas quanto parecem. Imagine as seguintes situações:


1. Alguém retorna uma referência de uma variável local não-estática:

&lt;pre lang=&quot;cpp&quot;&gt;
string&amp; QueroEconomizarCopiasDeString()
{
   string ret;
   // hack hack hack
   return ret; // espertão...
}
&lt;/pre&gt;

Nesse caso o escopo termina antes mesmo de alguém usar a referência.

A solução é receber uma referência como parâmetro e fazer apenas um cópia: para a variável &quot;de fora&quot;.


2. Alguém quer usar memória dinâmica como variáveis comuns:

&lt;pre lang=&quot;cpp&quot;&gt;
int main()
{
   int* pi = new int;

   // linhas de código para esquecer quem é pi

   int&amp; ri = *pi; // acho ponteiros complicado

   // mais linhas de código para esquecer ri e pi

   delete pi;

   // tcharammm...

   ri = 42; // é a resposta para tudo, não?
}
&lt;/pre&gt;


Esses exemplos parecem besta, mas não tão improváveis quanto parecem. Basta o código estar maquiado com Design Patterns ou qualquer outra besteira e ele explode sem você saber o que aconteceu.

[]s</description>
		<content:encoded><![CDATA[<p>Ótimo artigo!</p>
<p>Infelizmente, as referências não são tão inofensivas quanto parecem. Imagine as seguintes situações:</p>
<p>1. Alguém retorna uma referência de uma variável local não-estática:</p>

<div class="wp_syntax"><div class="code"><pre class="cpp" style="font-family:monospace;">string<span style="color: #000040;">&amp;</span> QueroEconomizarCopiasDeString<span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span>
<span style="color: #008000;">&#123;</span>
   string ret<span style="color: #008080;">;</span>
   <span style="color: #666666;">// hack hack hack</span>
   <span style="color: #0000ff;">return</span> ret<span style="color: #008080;">;</span> <span style="color: #666666;">// espertão...</span>
<span style="color: #008000;">&#125;</span></pre></div></div>

<p>Nesse caso o escopo termina antes mesmo de alguém usar a referência.</p>
<p>A solução é receber uma referência como parâmetro e fazer apenas um cópia: para a variável &#8220;de fora&#8221;.</p>
<p>2. Alguém quer usar memória dinâmica como variáveis comuns:</p>

<div class="wp_syntax"><div class="code"><pre class="cpp" style="font-family:monospace;"><span style="color: #0000ff;">int</span> main<span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span>
<span style="color: #008000;">&#123;</span>
   <span style="color: #0000ff;">int</span><span style="color: #000040;">*</span> pi <span style="color: #000080;">=</span> <span style="color: #0000dd;">new</span> <span style="color: #0000ff;">int</span><span style="color: #008080;">;</span>
&nbsp;
   <span style="color: #666666;">// linhas de código para esquecer quem é pi</span>
&nbsp;
   <span style="color: #0000ff;">int</span><span style="color: #000040;">&amp;</span> ri <span style="color: #000080;">=</span> <span style="color: #000040;">*</span>pi<span style="color: #008080;">;</span> <span style="color: #666666;">// acho ponteiros complicado</span>
&nbsp;
   <span style="color: #666666;">// mais linhas de código para esquecer ri e pi</span>
&nbsp;
   <span style="color: #0000dd;">delete</span> pi<span style="color: #008080;">;</span>
&nbsp;
   <span style="color: #666666;">// tcharammm...</span>
&nbsp;
   ri <span style="color: #000080;">=</span> <span style="color: #0000dd;">42</span><span style="color: #008080;">;</span> <span style="color: #666666;">// é a resposta para tudo, não?</span>
<span style="color: #008000;">&#125;</span></pre></div></div>

<p>Esses exemplos parecem besta, mas não tão improváveis quanto parecem. Basta o código estar maquiado com Design Patterns ou qualquer outra besteira e ele explode sem você saber o que aconteceu.</p>
<p>[]s</p>
]]></content:encoded>
	</item>
</channel>
</rss>
