Topic: Adding virtual/private/protected/public keywords in
Author: yannick.daveluy@gmail.com
Date: Tue, 3 Nov 2015 01:45:41 -0800 (PST)
Raw View
------=_Part_667_84999475.1446543941871
Content-Type: multipart/alternative;
boundary="----=_Part_668_870566261.1446543941871"
------=_Part_668_870566261.1446543941871
Content-Type: text/plain; charset=UTF-8
When using variadic templates, the syntax does not allow to use virtual,
private, protected and public keywords prefixs for parameters.
e.g:
*template <class ... BaseClasses>class A: BaseClasses...{ struct S:
BaseClasses::S... {};};class B{ struct S{};};class C{ struct
S{};};class D: public A< public virtual B, protected C > // =>do not
compile{};==> D should inherit from the following class A':class A': public
virtual B, protected C{ struct S: public virtual B::S, protected
C::S{};};*
Yannick
--
---
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.
Visit this group at http://groups.google.com/a/isocpp.org/group/std-proposals/.
------=_Part_668_870566261.1446543941871
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: quoted-printable
<div dir=3D"ltr"><br>When using variadic templates,=C2=A0 the syntax does n=
ot allow to use virtual, private, protected and public keywords prefixs for=
parameters.<br><br><br>e.g:<br><div style=3D"margin-left: 40px;"><br></div=
><div style=3D"margin-left: 40px;"><i>template <class ... BaseClasses>=
;<br>class A: BaseClasses...<br>{<br>=C2=A0=C2=A0=C2=A0 struct S: BaseClass=
es::S... {};<br>};<br><br>class B<br>{<br>=C2=A0=C2=A0=C2=A0 struct S{};<br=
>};<br>class C<br>{<br>=C2=A0=C2=A0=C2=A0 struct S{};<br>};<br><br><br>clas=
s D: public A< public virtual B, protected C > // =3D>do not compi=
le<br>{<br>};<br><br>=3D=3D> D should inherit from the following class A=
':<br>class A': public virtual B, protected C<br>{<br>=C2=A0=C2=A0=
=C2=A0 struct S: public virtual B::S, protected C::S{};<br>};<br></i></div>=
<br>Yannick<br><br></div>
<p></p>
-- <br />
<br />
--- <br />
You received this message because you are subscribed to the Google Groups &=
quot;ISO C++ Standard - Future Proposals" 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 />
Visit this group at <a href=3D"http://groups.google.com/a/isocpp.org/group/=
std-proposals/">http://groups.google.com/a/isocpp.org/group/std-proposals/<=
/a>.<br />
------=_Part_668_870566261.1446543941871--
------=_Part_667_84999475.1446543941871--
.