home bbs files messages ]

Forums before death by AOL, social media and spammers... "We can't have nice things"

   comp.lang.c++.moderated      Moderated discussion of C++ superhackery      33,346 messages   

[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]

   Message 32,672 of 33,346   
   =?ISO-8859-1?Q?Daniel_Kr=FCgler?= to Cassio Neri   
   Re: Does a template class class built on   
   21 Nov 12 23:50:31   
   
   From: daniel.kruegler@googlemail.com   
      
   On 2012-11-22 00:43, Cassio Neri wrote:   
   > Hi all,   
   >   
   > I need to know if a template class built on recursive inheritance has the   
   > same layout as an array. More precisely,   
   >   
   > template    
   > class foo;   
   >   
   > template    
   > class foo {   
   >      T value;   
   > };   
   >   
   > template    
   > class foo : private foo {   
   >      foo value;   
   > };   
   >   
   > This is a simplification and so it's important to state that the real foo   
   > has no other non-static data members, it has no virtual methods and it   
   > doesn't derive from anything else (apart from the inheritance from   
   > foo seen above). However, T is unknown in advance. The question is:   
   > can I be sure that foo has the same layout as T[N]?   
      
   I'm not sure what you actually precisely mean with "same layout". If you   
   mean whether T[N] and foo are /layout-compatible/ according to 3.9   
   and 9.2: I don't see evidence for that. To the contrary, 9.2 p19   
   indicates that there might be padding *after* each data member value of   
   any foo specialization.   
      
   HTH & Greetings from Bremen,   
      
   Daniel Krügler   
      
      
   --   
         [ See http://www.gotw.ca/resources/clcm.htm for info about ]   
         [ comp.lang.c++.moderated.    First time posters: Do this! ]   
      
   --- SoupGate-Win32 v1.05   
    * Origin: you cannot sedate... all the things you hate (1:229/2)   

[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]


(c) 1994,  bbs@darkrealms.ca