가능한 중복 : 나는 다른 일이 간단한 코드를 보았다
Difference between pointer variable and reference variable in C++C++ 참조/포인터
, 내가 년 정도가 있지만, 나는 나 자신 포인터 초보자 고려 C++의 절반 경험. 여하튼 ...
int a = 0;
int &b = a;
및
분명히int a = 0
int *p = &a;
차이점은, p는 (A)의 어드레스를 보유하고 있지만, B는 I 값을 변경할 수 있음을 의미하는 참조 뭐죠
의 a와 b. 그러나 나는 또한 p로 같은 일을 할 수있다. 장점이나 단점은 무엇입니까?
참조는 null 일 수 있습니다. int * a = 0; int & b = * a; –
이렇게하면 참조가 잘못된 개체를 참조 할 수도 있습니다. 하지만 int & b = NULL과 같은 것은 초기화 할 수 없습니다. –
@Benoit : 참조는 null 일 수 없습니다. 8.3.2/4 : "참조는 유효한 객체 나 기능을 참조하도록 초기화되어야한다. [...] 널 참조가 잘 정의 된 프로그램에는 존재할 수 없다" –