next up previous
Array-Initialisierung


Test der Möglichkeiten zur Initialisierung von Objekten o.g. Typen in main-Funktion:

 
// File: ArrInit.cc

#include <ArrInit.h>
#include <ArrInitT.h>

int main()
{
                      // only public elements:
  PublicS PuS;        //   implicit default Constructor
  PuS.s = "";         //   aggregate initialization:
  PublicC PuC = {11, "111", 11.11}; 
                      // private elements:
                      //   no aggregate initialization:
// PrivateC PrC = {22, "222", 22.22};
//  `PrC' must be initialized by constructor, not by `{...}'

                      // constructor, but no implicit default:
// NoDefaultC NoDefC1;
//  no matching function for call to `NoDefaultC::NoDefaultC ()'
//  candidates are: NoDefaultC::NoDefaultC(const NoDefaultC &)
//                  NoDefaultC::NoDefaultC(int, char *, float)
                      //   no aggregate initialization:
// NoDefaultC NoDefC2 = {33, "333", 33.33};
//  `NoDefC2' must be initialized by constructor, not by `{...}'
                      //   constructor initialization:
  NoDefaultC NoDefC3(33, "333", 33.33);

                      // constructor, explicit default too:
// DefaultC DefC1 = {44, "444", 44.44};
//  `DefC1' must be initialized by constructor, not by `{...}'
  DefaultC DefC2;
  DefaultC DefC3(55, "555", 55.55);


next up previous