Heim  >  Artikel  >  Backend-Entwicklung  >  Ausführliche Erläuterung der Verwendung von booleschen C++-Typen und -Referenzen

Ausführliche Erläuterung der Verwendung von booleschen C++-Typen und -Referenzen

php是最好的语言
php是最好的语言Original
2018-08-06 09:17:214024Durchsuche

1. Boolescher Typ

Boolescher Typ in C++

  • C++ fügt bool hinzu

  • Die einzig möglichen Werte für

    in C++ sind bool und truefalse

  • Theoretisch belegt

    ein Bytebool

Hinweis:

stellt einen wahren Wert dar und wird intern im Compiler durch 1 dargestellt. true

stellt einen Nicht-Wert dar. wahrer Wert, intern im Compiler. Verwenden Sie 0, um false

darzustellen. In der C-Sprache:

verwendet einen ganzzahligen Wert, um den häufig verwendeten

bool0:flase, 1:trueC++ hat eine Typverbesserung vorgenommen. Ein sehr strenger

-Typ wurde hinzugefügt, und
und

existieren als Schlüsselwörter. booltrue Im booleschen Typ von C++ hat der Typ false nur zwei Werte:

und

. Der C++-Compiler konvertiert Nicht-0-Werte in bool- und 0-Werte ​in true . false

bool b = 0;
printf("b = %d\n", b);
b++;
printf("b = %d\n", b);
b = b - 3;
printf("b = %d\n", b);
// bool类型是否支持数学运算?
trueTatsächlich wird in der C++-Sprache die interne Implementierung des Booleschen Typs als Ein-Byte-Ganzzahl implementiert. Der Typ false unterstützt mathematische Operationen und wird vom Compiler intern angepasst. 0 ist wahr. 0 ist falsch Definieren Sie den Typ

. Globale Variablen
bool

können Konstanten vom Typ

    definieren. Sie können Zeiger vom Typ
  • bool

    kann Arrays vom Typ
  • ......bool

  • 2 definieren 🎜>boolDer ternäre Operator wurde in C++ aktualisiert

  • Überprüfen Sie, ob der folgende Code korrekt ist, kompilieren Sie den Test und führen Sie ihn in der C-Sprache bzw. C++-Umgebung aus
  • #include <stdio.h>
    
    int main(int argc, char *argv[])
    {
        bool b = false;
        int a = b;
        
        printf("sizeof(b) = %d\n", sizeof(b));
        // sizeof(b) = 1, bool类型占一个字节
        printf("b = %d, a = %d\n", b, a);    0
        // b = 0, a = 0
        
        b = 3;    // b = 1
        a = b;  // a = 1
        
        printf("b = %d, a = %d\n", b, a);
        
        b = -5;    // b = 1
        a = b;  // a = 1
        
        printf("b = %d, a = %d\n", b, a);
        
        a = 10; // a = 10
        b = a;  // b = 1
        
        printf("a = %d, b = %d\n", a, b);
        
        a = 0;    // a = 0
        b = a;  // b = 0
        
        printf("a = %d, b = %d\n", a, b);
        
        return 0;
    }

    boolTernär Operator

  • Der ternäre Operator in der C-Sprache gibt den Variablenwert zurück

kann nicht als L-Wert verwendet werden

Der ternäre Operator in C++ kann die Variable selbst direkt zurückgeben

  • Kann sowohl als R-Wert als auch als L-Wert verwendet werden
    • Hinweis:
    Wenn einer der Werte, die vom ternären Operator zurückgegeben werden können, ein konstanter Wert ist, kann er nicht als L-Wert verwendet werden
  • Der ternäre Operator kann nur dann als L-Wert verwendet werden, wenn alle möglichen Rückgaben Variablen sind. Eine Konstante und eine Variable können nicht als L-Wert verwendet werden.

    • C++ macht dies für den ternären Operator. Was bringt das Upgrade? ?
    • Wenn alle möglichen Rückgaben des ternären Operators Variablen sind,

      gibt die Variable selbst zurück
    • , was zu einem neuen Konzept führt: Referenz
3. Referenz

3.1 Variablenname

Eine Variable ist ein Alias ​​für einen tatsächlichen fortlaufenden Speicherplatz. Im Programm wird der Speicherplatz über Variablen beantragt und benannt.

Frage: Kann ein fortlaufender Speicherplatz nur einen Alias ​​haben?

3.2 Referenz

Referenz in C++

Das Konzept der Referenz wurde in C++ hinzugefügt

int a = 1;
int b =2;
(a < b ? a : b) = 3;
printf("a = %d, b = %d\n", a, b);
// 在C语言中报错
// 在C++中,结果a = 3


Ausführliche Erläuterung der Verwendung von booleschen C++-Typen und -ReferenzenEine Referenz kann als Alias ​​für eine definierte Variable angesehen werden

Die Syntax einer Referenz:

  • Hinweis:
    • Gewöhnliche Referenzen müssen bei der Definition mit Variablen desselben Typs initialisiert werden.
    • Was macht C++ mit dem ternären Operator?
    • int a = 4;
      int& b = a;     // b作为a的别名
      b = 5;        // 操作b就是操作a

      Type& name = var;

    • Wenn die möglichen Rückgaben des ternären Operators alle Variablen sind, wird eine
    Variablenreferenz

zurückgegeben

Wenn die möglichen Rückgaben des ternären Operators Konstanten enthalten, ist der zurückgegebene Wert
    Wert
    • 4. Zusammenfassung ist ein neu hinzugefügter Basistyp in C++. Die Werte des Typs

    • können nur
    • und

      sein Der Operator in C++ kann als L-Wert verwendet werden. Referenzen in C++ können als Aliase von Variablen betrachtet werden. Wenn die möglichen Rückgaben des ternären Operators

    • alle Variablen sind, wird a zurückgegeben Referenz.
verwandter Artikel:

Verwendungsbeispiele für den Typ PHP Booleanbool

booltrueEinführung in die Verwendung von PHP Boolean Datentyp false truefalse

Das obige ist der detaillierte Inhalt vonAusführliche Erläuterung der Verwendung von booleschen C++-Typen und -Referenzen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn