Tag: one-definition-rule
Alles rund um die C++ – One Definition Rule (ODR), d.h. in der Regel der C++ – standard-ein Verbot mehrere Definitionen der meisten anderen Personen. Die ODR rund Mandate, die die meisten anderen Entitäten (Objekte, Funktionen, templates, etc.) muss eine eindeutige (nicht dupliziert) definition in der gleichen übersetzungseinheit oder über das gesamte Programm, während mehrere Erklärungen sind immer noch möglich.
6
Antworten
Lese ich dieser code von hier(in Chinesisch). Es ist ein Stück code, der zum testen von globalen Variablen in C. Die variable a wurde in der Datei definiert t.h die schon zweimal dabei. In der Datei foo.c
6
Antworten
Mehrere definition einer globalen variable ist nicht erlaubt, die in C oder C++ wegen der One Definition Rule. Aber in C++ ein const Globale variable kann definiert werden, in mehrere compilation units mit keine Fehler. Dies ist
3
Antworten
Statische variable ' file scope. Sagen, ich habe zwei folgenden Dateien bestehen: Datei1.h file1.cpp Datei2.h file2.cpp Habe ich static deklarierte variable sagen static int Var1 sowohl in der header-Dateien. Beide file1.h und file2.h sind enthalten in main.cpp
2
Antworten
Dieser kam gerade im Kontext der eine andere Frage. Scheinbar member-Funktionen in Klassen-templates sind nur instanziiert, wenn Sie ODR-verwendet. Könnte jemand erklären, was genau das bedeutet. Die wikipedia-Artikel über One Definition Rule (ODR) nicht erwähnen "ODR-Nutzung". Jedoch
12
Antworten
Wann sollte ich schreiben das Schlüsselwort inline für eine Funktion/Methode in C++? Nachdem Sie einige Antworten, einige Fragen: Wann sollte ich nicht schreiben Sie das Schlüsselwort 'inline' für eine Funktion/Methode in C++? Wann wird der compiler nicht