C ++
 Computer >> コンピューター >  >> プログラミング >> C ++

C ++の右辺値、左辺値、x値、glvalues、およびprvaluesとは何ですか?


  • 左辺値には、プログラムがアクセスできるアドレスがあります。左辺値式の例には、const変数、配列要素、左辺値参照を返す関数呼び出し、ビットフィールド、共用体、クラスメンバーなどの変数名が含まれます。
  • xvalue式にはアドレスがありませんが、式へのアクセスを提供する右辺値参照を初期化するために使用できます。例には、右辺値参照、配列添え字などを返す関数呼び出しが含まれます。
  • glvalue(「一般化された」左辺値)は左辺値またはx値です。
  • 右辺値(いわゆる、歴史的には、右辺値が代入式の右側に表示される可能性があるため)は、x値、一時オブジェクトまたはそのサブオブジェクト、またはオブジェクトに関連付けられていない値です。
  • prvalue式には、プログラムからアクセスできるアドレスがありません。 prvalue式の例には、リテラル、非参照型を返す関数呼び出しが含まれます

  1. C ++の符号付きおよび符号なしキーワードとは何ですか?

    C ++のすべての数値タイプには、符号を付けることも付けないこともできます。たとえば、正の整数のみを表すintを宣言できます。特に指定がない限り、すべての整数データ型は符号付きデータ型です。つまり、正または負の値をとることができます。 unsignedキーワードは、符号なしの変数を宣言するために使用できます。 例 #include<iostream> using namespace std; int main() {    unsigned int i = -1;    int x = i;    cout <&l

  2. C#の右辺値と左辺値とは何ですか?

    以下は、C#の式のタイプです- 左辺値 −左辺値である式は、代入の左側または右側のいずれかとして表示される場合があります。 値 −右辺値である式は、代入の右側に表示される場合がありますが、左側には表示されない場合があります。 変数は左辺値であるため、代入の左側に表示される場合があります。数値リテラルは右辺値であるため、割り当てられず、左側に表示されない場合があります。 これが有効なC#ステートメントです- int a = 100: