mögliche Dubletten:
Empty class in C++
What is the size of an empty struct in C?sizeof leere Struktur ist 0 in C und 1 in C++ warum?
Ich habe irgendwo gelesen, dass Größe eines leeren struct in C++ ist 1. Also dachte ich, es zu verifizieren. Leider habe ich es als C-Datei gespeichert und <stdio.h>
Header verwendet und ich war überrascht, die Ausgabe zu sehen. Es war 0.
dass
struct Empty {
};
int main(void)
{
printf("%d",(int)sizeof(Empty));
}
bedeutet 0 wurde das Drucken, wenn sie als C-Datei kompiliert und 1, wenn sie als C++ Datei kompiliert. Ich möchte den Grund wissen. Ich habe gelesen, dass die Größe der leeren Struktur in C++ nicht Null ist, denn wenn die Größe 0 wäre, hätten zwei Objekte der Klasse die gleiche Adresse, was nicht möglich ist. Wo liege ich falsch?
-1 Nein, Sie didn‘ t kompilieren Sie das als 'C'. – pmg
@Ninad: Haben Sie [this] (http://ideone.com/WAxMI) versucht? –
Wenn Sie Fragen auf dieser Sprachebene stellen, geben Sie bitte den Namen und die Version des Compilers an. –