분류 | 게시판 |
베스트 |
|
유머 |
|
이야기 |
|
이슈 |
|
생활 |
|
취미 |
|
학술 |
|
방송연예 |
|
방송프로그램 |
|
디지털 |
|
스포츠 |
|
야구팀 |
|
게임1 |
|
게임2 |
|
기타 |
|
운영 |
|
임시게시판 |
|
#include <iostream>
class Some
{
public:
int &ri;//레퍼런스 선언만 있음,초기화X
Some(int &i) : ri(i) { }
void OutValue() { printf("%d\n",ri); }
};
void main()
{
int i=5;
Some S(i);
S.OutValue();
}
그런데 이 소스코드에서 레퍼런스가 선언과 동시에 초기화 되어있지 않은데도
실제 컴파일하면 에러가 없는데요.
그런데 어째서 생성자에서만 레퍼런스를 초기화 없이 선언만 해서 사용할 수 있나요?
그리고 생성자 이외에 C++에서 레퍼런스를 선언만해서 나중에 변수를 대입해서 사용할 수 있는 부분이 또 있는지 알고 싶네요.
죄송합니다. 댓글 작성은 회원만 가능합니다.