Skip to content

Latest commit

 

History

History
83 lines (56 loc) · 785 Bytes

002-reference.md

File metadata and controls

83 lines (56 loc) · 785 Bytes

% リファレンス % 江添亮 % 2019-07-29

リファレンス

江添亮

区分

  • lvalueリファレンス
  • rvalueリファレンス

ポインター

  • 文法が面倒
int obj ;
int * ptr = &obj ;
*ptr = 123 ;

リファレンスなら

  • 簡単
int obj ;
int & ref = obj ;
ref = 123 ;

共通点

  • 値を参照する
int obj = 0 ;
int ref = obj ;
++ref ;
std::cout << obj ; // 1

特徴

  • 初期化が必要
  • nullリファレンスはない
int & ref ; // エラー

様々な値

int f() ;
int x{} ;

f() ;
x ;
x + x ;
0 ;

値カテゴリー

値には種類がある

  • value
  • glvalue/rvalues +lvalue/xvalue/prvalue

value

  • すべての値の総称
  • glvalu
  • rvalues

glvalue

  • genera