Tests zur Initialisierung von Arrays von Objekten der definierten C++-Typen in main-Funktion:
// constructor, but no implicit default: // NoDefaultC ANoDefC1[2]; // no matching function for call to `NoDefaultC::NoDefaultC ()' // candidates are: NoDefaultC::NoDefaultC(const NoDefaultC &) // NoDefaultC::NoDefaultC(int, char *, float) // no aggregate initialization: // NoDefaultC ANoDefC2[] = {{10, "100", 10.10}, {11, "110", 11.11}}; // subobject of type `NoDefaultC' must be initialized by constructor, // not by `{10, "100", 0x00000000000000000000980099999999a1994002}' // subobject of type `NoDefaultC' must be initialized by constructor, // not by `{11, "110", 0x00000000000000000000c00028f58f5cb1c24002}' // constructor initialization: NoDefaultC ANoDefC3[] = {NoDefaultC(12, "120", 12.12), NoDefaultC(13, "130", 13.13)}; // constructor, explicit default too: // DefaultC ADefC1[] = {{14, "140", 14.14}, {15, "150", 15.15}}; // subobject of type `DefaultC' must be initialized by constructor, // not by `{14, "140", 0x000000000000000000004000d70a70a3e23d4002}' // subobject of type `DefaultC' must be initialized by constructor, // not by `{15, "150", 0x00000000000000000000680066666666f2664002}' DefaultC ADefC2[2]; DefaultC ADefC3[] = {DefaultC(16, "160", 16.16), DefaultC(17, "170", 17.17)}; printOn(cout, APuS, 2, "PublicS"); printOn(cout, APuC, 2, "PublicC"); printOn(cout, ANoDefC3, 2, "NoDefaultC"); printOn(cout, ADefC2, 2, "DefaultC"); printOn(cout, ADefC3, 2, "DefaultC"); return 0; };