C++ verbessert die C-Sprache – Typerweiterung
1. Register-Schlüsselworterweiterung
Register-Schlüsselwort fordert den Compiler auf, Variablen direkt in Registern zu platzieren, was schnell ist.
In der C-Sprache können durch Register geänderte Variablen keine Adressen annehmen; in C++ können sie Adressen annehmen.
2. Verbesserung der Variablenerkennung
In der Sprache C ist es zulässig, mehrere globale Variablen mit demselben Namen zu definieren. In C++ ist es nicht zulässig, mehrere globale Variablen mit demselben Namen zu definieren Name.
3. Alle Variablen und Funktionen in C++ müssen Typen haben
Int f( ); bedeutet, dass der Rückgabewert int ist und alle Parameter akzeptiert Funktion
int f(void); stellt eine parameterlose Funktion dar
, deren Rückgabewert int ist. In C++ hat
int f( ); Die Bedeutung von all bedeutet eine Parameterlose Funktion, die eine int
4 Erweiterte ternäre Operatorfunktion
zurückgibt. Beispiel: a< a : b )= 30;
Differenz : Die C-Sprache gibt den Wert der Variablen zurück; die C++-Sprache gibt die Variable selbst zurück
Der ternäre Operator in der C-Sprache gibt den Variablenwert zurück und kann nicht als L-Wert verwendet werden
In C++ Der ternäre Operator kann die Variable selbst direkt zurückgeben, sodass sie überall im Programm erscheinen kann
Hinweis: Wenn einer der Werte, die der ternäre Operator möglicherweise zurückgibt, ein konstanter Wert ist, kann er nicht als L-Wert verwendet werden ( a < b ? 1 :b )= 30;
Wie unterstützt die Sprache C ähnliche Funktionen wie C++?
====>Die Bedingung für lvalue: Es muss Speicherplatz vorhanden sein; der C++-Compiler hilft dem Programmierer lediglich, eine Adresse zu erhalten
1.const-Qualifizierererkennung
Funktion : Konvertieren Sie ein Objekt in eine schreibgeschützte Konstante.
int main() { const int a;// 1 第1个第2个意思一样 代表一个常整形数 int const b;// 2 const int *c; // 3 第3个 c是一个指向常整形数的指针(所指向的内存数据不能被修改,但是本身可以修改) int * const d; //4 第4个 d 常指针(指针变量不能被修改,但是它所指向内存空间可以被修改) const int * const e ; //5 第5个 e一个指向常整形的常指针(指针和它所指向的内存空间,均不能被修改) return 0; }
const int bufSize=512;bufSize初始化之后就无法进行修改了。 1)在C++中,const符号表原理:存储方式是符号表即key value key value bufSize 512
Schlussfolgerung: Der Unterschied zwischen const-Variablen in C-Sprache und C++
Const-Variablen in C-Sprache sind schreibgeschützte Variablen und haben ihren eigenen Speicherplatz
Const-Konstanten in C++
kann Speicherplatz zuweisen oder nicht
Wenn die Konstante const global ist und in anderen Dateien verwendet werden muss
Wenn der &-Operator verwendet wird, um die Konstante const zu erhalten Adresse
2) Die Ähnlichkeiten und Unterschiede zwischen const und #define
sind gleich: beide können als Konstanten verwendet werden
Unterschied: const-Konstanten werden vom Compiler verarbeitet, Bietet Typerkennung und Bereichsprüfung, Makrodefinitionen werden vom Präprozessor verarbeitet, einfache Textersetzung.
Das Obige ist die Zusammenfassung der C++-Überprüfungspunkte (1). Weitere verwandte Inhalte finden Sie auf der chinesischen PHP-Website (www.php.cn)!