220 33149 <8df877a7-658d-48bb-887b-0df4fd67a857@isocpp.org> article
Path: news.gmane.org!.POSTED!not-for-mail
From: Nicol Bolas <jmckesson@gmail.com>
Newsgroups: gmane.comp.lang.c++.isocpp.proposals
Subject: Re: template class to do default integral types initalization
Date: Fri, 7 Jul 2017 12:46:37 -0700 (PDT)
Lines: 85
Approved: news@gmane.org
Message-ID: <8df877a7-658d-48bb-887b-0df4fd67a857@isocpp.org>
References: <CA+fXA1B3TD29whzpCcuMH3H63nbp8tOWn1f3E7HBEnC6piYFkA@mail.gmail.com>
Reply-To: std-proposals@isocpp.org
NNTP-Posting-Host: blaine.gmane.org
Mime-Version: 1.0
Content-Type: multipart/mixed; 
	boundary="----=_Part_5006_1811496403.1499456797683"
X-Trace: blaine.gmane.org 1499456806 19693 195.159.176.226 (7 Jul 2017 19:46:46 GMT)
X-Complaints-To: usenet@blaine.gmane.org
NNTP-Posting-Date: Fri, 7 Jul 2017 19:46:46 +0000 (UTC)
Cc: ar123456@gmail.com
To: ISO C++ Standard - Future Proposals <std-proposals@isocpp.org>
Original-X-From: std-proposals+bncBCEKFTV6ZUMBBHWK77FAKGQEMQT2OII@isocpp.org Fri Jul 07 21:46:39 2017
Return-path: <std-proposals+bncBCEKFTV6ZUMBBHWK77FAKGQEMQT2OII@isocpp.org>
Envelope-to: gclcip-std-proposals@m.gmane.org
Original-Received: from mail-it0-f69.google.com ([209.85.214.69])
	by blaine.gmane.org with esmtp (Exim 4.84_2)
	(envelope-from <std-proposals+bncBCEKFTV6ZUMBBHWK77FAKGQEMQT2OII@isocpp.org>)
	id 1dTZD0-0004cF-CT
	for gclcip-std-proposals@m.gmane.org; Fri, 07 Jul 2017 21:46:34 +0200
Original-Received: by mail-it0-f69.google.com with SMTP id k3sf64504514ita.4
        for <gclcip-std-proposals@m.gmane.org>; Fri, 07 Jul 2017 12:46:39 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=isocpp-org.20150623.gappssmtp.com; s=20150623;
        h=date:from:to:cc:message-id:in-reply-to:references:subject
         :mime-version:x-original-sender:reply-to:precedence:mailing-list
         :list-id:list-post:list-help:list-archive:list-subscribe
         :list-unsubscribe;
        bh=dB4s1UoEI7qc8ZqQIE+Ahp4SCSFJ0byMnfzJ94WGU/A=;
        b=KUFQtUtvNMkXffApwbTlffKKHh82koqr9RnwS5gk4uEHX0ifxDm1kORDgTTMhwiS1e
         bquasv94vASMchXxOJuY4bgiMppIZD1ZFH+Ea9Ph7VK/oM/JxUbBskt8Jjwkl3GaUuaR
         xfZ8lwyvgOdXLH+0JQUuHlnalVQVvUcKx2zC4PQGEyl5zNzHbap/fsOtg5PtQUdX3G2s
         blK53J9M/XPRnQmiuwhR/dZYilMZzrKveXMUYeisWk5tm1bCncLLMbcRaVG5SLhV/SCN
         fKvmbBw04cWxQkQMtoeE62kz2BohOc9vqyHuAaPKK/km187jPKdN2/PaGZQq4Xda43sn
         PdjQ==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20161025;
        h=date:from:to:cc:message-id:in-reply-to:references:subject
         :mime-version:x-original-sender:reply-to:precedence:mailing-list
         :list-id:list-post:list-help:list-archive:list-subscribe
         :list-unsubscribe;
        bh=dB4s1UoEI7qc8ZqQIE+Ahp4SCSFJ0byMnfzJ94WGU/A=;
        b=vcch6jZhbzAB/M67K4a6tFbgKttQrr7vKwvCzGmpCClxsvzmLYi+Mo2dKkZuu4Wgc7
         3I0lG3MHXaeiQ/rs2gdAmetG4lsvSO3o5x1y57DwfHe8SGUkIFYYYNG4O5DP0UAEUm1g
         qnsWZMhiM2Zmmfm/Y9+qROmCQrpAMpxmcCIFQjad7+kQk0PUbK5UxKODLWnM4FneN8/w
         UVQ9pFso6Mto+YFCSGFuDF6hASCGfvGOymueISSth/AwBOC+DXDEz8RJyORG3De5U97K
         zOHhN7ehT8y23qB5dWRLaH13J6S5RUYXnE0GPVToHIW4vd6KZLQg4v1kNJDSvgI0AgB0
         4isw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:date:from:to:cc:message-id:in-reply-to
         :references:subject:mime-version:x-original-sender:reply-to
         :precedence:mailing-list:list-id:x-spam-checked-in-group:list-post
         :list-help:list-archive:list-subscribe:list-unsubscribe;
        bh=dB4s1UoEI7qc8ZqQIE+Ahp4SCSFJ0byMnfzJ94WGU/A=;
        b=UJIvSDQw8ppSawvJyjsnnkRs2eYd/XPUwL7GNkR5yuAEfyNTE4TeERem/KcaashhRI
         VKpmhCxQoJtw6LwrJzt3tqbW72MPDCAGWpnrImqUfIWlGd6u4rsp0A5KFFeocLQ1bUAB
         DNlWso6n+qx0Uj8GziZGVmSIV3iPLMPkhiKtMHfP2ML9eJSuj3immI9dvzmFozW88sR8
         X5gGSbXg3u45KfDR/nEan9cpHpqqJKRRtVe+RU+p40pNWvKrYg3pCM594ui0LaMJjByf
         jIVhD+3kD+Z0xMzpQbINSgz4lByWeYch+IPfzz4VY2+e4DU043iqwWMnaqZah/68akw7
         5HEA==
X-Gm-Message-State: AIVw110P6xXoH2Pzglg6v1VTLfao0rgcN2Qcuor6GwcOcglVWV2Sn292
	WZ+/2N5s73kCTisg
X-Received: by 10.107.182.198 with SMTP id g189mr3105724iof.20.1499456799326;
        Fri, 07 Jul 2017 12:46:39 -0700 (PDT)
X-BeenThere: std-proposals@isocpp.org
Original-Received: by 10.107.155.9 with SMTP id d9ls6134227ioe.40.gmail; Fri, 07 Jul
 2017 12:46:38 -0700 (PDT)
X-Received: by 10.36.26.134 with SMTP id 128mr19572iti.3.1499456798096;
        Fri, 07 Jul 2017 12:46:38 -0700 (PDT)
In-Reply-To: <CA+fXA1B3TD29whzpCcuMH3H63nbp8tOWn1f3E7HBEnC6piYFkA@mail.gmail.com>
X-Original-Sender: jmckesson@gmail.com
Precedence: list
Mailing-list: list std-proposals@isocpp.org; contact std-proposals+owners@isocpp.org
List-ID: <std-proposals.isocpp.org>
X-Google-Group-Id: 399137483710
List-Post: <https://groups.google.com/a/isocpp.org/group/std-proposals/post>, <mailto:std-proposals@isocpp.org>
List-Help: <https://support.google.com/a/isocpp.org/bin/topic.py?topic=25838>, <mailto:std-proposals+help@isocpp.org>
List-Archive: <https://groups.google.com/a/isocpp.org/group/std-proposals/>
List-Subscribe: <https://groups.google.com/a/isocpp.org/group/std-proposals/subscribe>,
 <mailto:std-proposals+subscribe@isocpp.org>
List-Unsubscribe: <mailto:googlegroups-manage+399137483710+unsubscribe@googlegroups.com>,
 <https://groups.google.com/a/isocpp.org/group/std-proposals/subscribe>
Xref: news.gmane.org gmane.comp.lang.c++.isocpp.proposals:33149
Archived-At: <http://permalink.gmane.org/gmane.comp.lang.c++.isocpp.proposals/33149>

------=_Part_5006_1811496403.1499456797683
Content-Type: multipart/alternative; 
	boundary="----=_Part_5007_1966662172.1499456797683"

------=_Part_5007_1966662172.1499456797683
Content-Type: text/plain; charset="UTF-8"

On Friday, July 7, 2017 at 3:09:31 PM UTC-4, ar wrote:
>
> Hi
>
> I am an application developer in the telcom industry with 30+ years of 
> experience with 15+ years of heavy c++ for high end networking devices.
>
> I am working with code bases that started well  over 15 years ago and 
> there is no end in sight, hence, writing maintainable code is of natural 
> interest to me.
>
> One of the ideas in this area is to have all members to have default 
> constructors. If encapsulating class is copyable/movable/assignable, 
> members should have copy/move/assignment. Hence, adding new members would 
> not require changes in constructors/assignments.
>
> Hence everybody have to write its own wrapper providing default 
> constructor for integral types. I do believe that this approach has a lot 
> of merit and it will be popular, hence, it makes sense to support it in 
> standard library to avoid dealing with 10000 implementations of the same 
> simple idea.
>
> The example is below.
>

So you want a wrapper that forces *value initialization* on trivial types.

-- 
You received this message because you are subscribed to the Google Groups "ISO C++ Standard - Future Proposals" group.
To unsubscribe from this group and stop receiving emails from it, send an email to std-proposals+unsubscribe@isocpp.org.
To post to this group, send email to std-proposals@isocpp.org.
To view this discussion on the web visit https://groups.google.com/a/isocpp.org/d/msgid/std-proposals/8df877a7-658d-48bb-887b-0df4fd67a857%40isocpp.org.

------=_Part_5007_1966662172.1499456797683
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr">On Friday, July 7, 2017 at 3:09:31 PM UTC-4, ar wrote:<blo=
ckquote class=3D"gmail_quote" style=3D"margin: 0;margin-left: 0.8ex;border-=
left: 1px #ccc solid;padding-left: 1ex;"><div dir=3D"ltr">Hi<br><br>I am an=
 application developer in the telcom industry with
 30+ years of experience with 15+ years of heavy c++ for high end=20
networking devices.<br><br>I am working with code bases that started=20
well=C2=A0 over 15 years ago and there is no end in sight, hence, writing=
=20
maintainable code is of natural interest to me.<br><div><br></div><div>One
 of the ideas in this area is to have all members to have default=20
constructors. If encapsulating class is copyable/movable/assignable,=20
members should have copy/move/assignment. Hence, adding new members would n=
ot require changes in constructors/assignments.<br><br></div><div>Hence
 everybody have to write its own wrapper providing default constructor=20
for integral types. I do believe that this approach has a lot of merit=20
and it will be popular, hence, it makes sense to support it in standard=20
library to avoid dealing with 10000 implementations of the same simple=20
idea.<br><br></div><div>The example is below.<br></div></div></blockquote><=
div><br>So you want a wrapper that forces <i>value initialization</i> on tr=
ivial types.</div></div>

<p></p>

-- <br />
You received this message because you are subscribed to the Google Groups &=
quot;ISO C++ Standard - Future Proposals&quot; group.<br />
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to <a href=3D"mailto:std-proposals+unsubscribe@isocpp.org">std-proposa=
ls+unsubscribe@isocpp.org</a>.<br />
To post to this group, send email to <a href=3D"mailto:std-proposals@isocpp=
..org">std-proposals@isocpp.org</a>.<br />
To view this discussion on the web visit <a href=3D"https://groups.google.c=
om/a/isocpp.org/d/msgid/std-proposals/8df877a7-658d-48bb-887b-0df4fd67a857%=
40isocpp.org?utm_medium=3Demail&utm_source=3Dfooter">https://groups.google.=
com/a/isocpp.org/d/msgid/std-proposals/8df877a7-658d-48bb-887b-0df4fd67a857=
%40isocpp.org</a>.<br />

------=_Part_5007_1966662172.1499456797683--

------=_Part_5006_1811496403.1499456797683--

.
