Warum funktioniert die Optimierung für leere Basisklassen nicht?

Warum wird die leere Basisklassenoptimierung (EBO) in Visual C ++ nicht vollständig angewendet?

Gibt es eine Möglichkeit für mich, dem Compiler bei der Optimierung zu helfen, wenn ich viele Basisklassen habe?

#include <iostream>

struct T1 { };
struct T2 { };
struct T3 { };
struct T4 { };
struct T5 { };
struct T6 { };

struct Test : T1, T2, T3, T4, T5, T6 { };

int main() { std::cout << sizeof(Test); }   // Prints 5

Antworten auf die Frage(2)

Ihre Antwort auf die Frage