Account Options

  1. Sign in
The old Google Groups will be going away soon, but your browser is incompatible with the new version.
Google Groups Home
« Groups Home
Message from discussion Encapsulamento C++

Received: by 10.58.58.206 with SMTP id t14mr602000veq.16.1344473090949;
        Wed, 08 Aug 2012 17:44:50 -0700 (PDT)
X-BeenThere: ccppbrasil@googlegroups.com
Received: by 10.220.147.138 with SMTP id l10ls1857482vcv.7.gmail; Wed, 08 Aug
 2012 17:44:49 -0700 (PDT)
Received: by 10.58.2.40 with SMTP id 8mr5698539ver.14.1344473089171;
        Wed, 08 Aug 2012 17:44:49 -0700 (PDT)
Received: by 10.58.2.40 with SMTP id 8mr5698538ver.14.1344473089154;
        Wed, 08 Aug 2012 17:44:49 -0700 (PDT)
Return-Path: <felipe.m.alme...@gmail.com>
Received: from mail-vc0-f173.google.com (mail-vc0-f173.google.com [209.85.220.173])
        by gmr-mx.google.com with ESMTPS id y4si3728851vds.2.2012.08.08.17.44.49
        (version=TLSv1/SSLv3 cipher=OTHER);
        Wed, 08 Aug 2012 17:44:49 -0700 (PDT)
Received-SPF: pass (google.com: domain of felipe.m.alme...@gmail.com designates 209.85.220.173 as permitted sender) client-ip=209.85.220.173;
Authentication-Results: gmr-mx.google.com; spf=pass (google.com: domain of felipe.m.alme...@gmail.com designates 209.85.220.173 as permitted sender) smtp.mail=felipe.m.alme...@gmail.com; dkim=pass header...@gmail.com
Received: by vcbfl15 with SMTP id fl15so1678521vcb.18
        for <ccppbrasil@googlegroups.com>; Wed, 08 Aug 2012 17:44:49 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20120113;
        h=mime-version:in-reply-to:references:from:date:message-id:subject:to
         :content-type:content-transfer-encoding;
        bh=wUDQsJyDchTdsie5FqlgYaDITw6kV3i98v9mfcY/ld0=;
        b=NAxR/weTTg8kS5vF+CfxNqJVlaFDIup0eE7ISHEJlkSnKCQL2q0K/jsEnh1o1uvgZZ
         LD7fW3L3ukqLwTgPRh5rN/t8Fa3wlModaQENQnCM/im4GOQuKT2AwxbYtE8AjIdZTWrr
         q4CvYgYyf4U1j4rl4do0JpQv8n4PMLBhLFBs2WG3Lhg5a8z9a2v28YagsAAESljgy3e7
         itzgjyuZIc/5qL1d54/YxGqlHAYSc8HxwtruiC6YaquO2X+hMtoYis8KDAlkdonCX+P+
         16F1k0DCu8GSiEyQzzaC+lyMJOirfGvla0wrlKsHfnxlpA7evWTDbCRveMAlVV9vKEUB
         lYog==
Received: by 10.220.214.205 with SMTP id hb13mr15550815vcb.28.1344473089010;
 Wed, 08 Aug 2012 17:44:49 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.58.218.137 with HTTP; Wed, 8 Aug 2012 17:44:28 -0700 (PDT)
In-Reply-To: <CAHcc2Kzih4XgDM3ytmrr5MG=b25CLxmbPowN=7=iT+zQZP7...@mail.gmail.com>
References: <30acc70e-53bb-45d4-a35f-7f7e8a0eef0b@googlegroups.com>
 <44e9ea12-36a6-4816-9a68-537d662d304d@googlegroups.com> <cd663781-0f4d-4b84-9b7c-d37ec05925a1@googlegroups.com>
 <281FC890-1050-4252-B812-CE2A46179...@gmail.com> <CAP7Pvop4G7PWe+JxGV4iZq6UZcs1JELfvHJ4_HPyGT4y68j...@mail.gmail.com>
 <CALteQpjkqLr_T4NKr16qTOokZmWYtiOT22t6YA6WaC1z=xA...@mail.gmail.com>
 <CAPGXEnGNnCxJFdisykfd0rDDSM3QXXqqAqYm1PjBm3b4fvv...@mail.gmail.com>
 <501FD002.7070...@gmail.com> <CAExDhvZgVkjui2ODJCDzhm=VT3HTEwrnSBYmGh4TjypmuHr...@mail.gmail.com>
 <501FD605.8080...@gmail.com> <c870298d-b0ea-415f-a6af-fb9908ab2e58@googlegroups.com>
 <CAPGXEnHgzbzoewvWfJXO_nFXY7VubtywqhmKbkAE8MLhzqx...@mail.gmail.com>
 <CAP11n5YoO6rmi4sPCj2VoZMOy+-eHwPpt+fz368-hBB=+oj...@mail.gmail.com>
 <f47a0ab8-c4e1-46b3-8e58-dc6e577b25b1@googlegroups.com> <CAP11n5ZNm_mENWtviLmT1GxrL3cPWxK4h8HDm7_OMUp6YTH...@mail.gmail.com>
 <CAHcc2Kzih4XgDM3ytmrr5MG=b25CLxmbPowN=7=iT+zQZP7...@mail.gmail.com>
From: Felipe Magno de Almeida <felipe.m.alme...@gmail.com>
Date: Wed, 8 Aug 2012 21:44:28 -0300
Message-ID: <CADfx-VQJiwHvPVVFKkbomKMTudRMhxytPznB8H4HSnXD-re...@mail.gmail.com>
Subject: Re: [ccppbrasil] Encapsulamento C++
To: ccppbrasil@googlegroups.com
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable

2012/8/8 Ponto V! - Vin=EDcius Godoy <vinigo...@pontov.com.br>:
> Mas essa forma n=E3o viola igualmente o encapsulamento?
>
> Minha d=FAvida sempre foi:
> Voc=EA n=E3o pode retornar uma refer=EAncia para algo que seja diferente =
do tipo
> da sua propriedade interna. Al=E9m disso, esse "set" n=E3o faz qualquer
> valida=E7=E3o e, principalmente, n=E3o permite que se fa=E7a isso no futu=
ro.
>
> Ent=E3o, isso n=E3o =E9 apenas uma maneira rebuscada de deixar o tipo p=
=FAblico?

A refer=EAncia tem outro problema que =E9 o de obrigar a implementa=E7=E3o =
da classe
a manter o dado 'stored' exatamente com esse mesmo tipo. Isso =E9 terr=EDve=
l
para os associative containers aonde o iterador retorna uma refer=EAncia
para um std::pair ! Ou seja, voc=EA precisa manter a chave e o elemento
guardados sempre por std::pair para implementar essa interface.

[snip]

[]'s
--=20
Felipe Magno de Almeida