티스토리 뷰

C++

[C++] call by reference

pppgod 2019. 7. 5. 21:38

함수에 변수를 전달 하는 방법은 두가지가 있다. 그중에서 예제를 통해 포인터로 변수를 전달하는 방법을 알아보자.

예제

void func1(int *a) {
	cout << *a << endl;
}

void func2(int &a) {
	cout << a << endl;
}

void call() {
	int a = 5;
	func1(&a);
	func2(a):
}

위의 두가지 방법은 결과가 같다.

 

둘의 차이는 아규먼트를 NULL로 전달 가능하냐는 것이다.

func1(NULL);
func2(NULL); //error

밑에처럼 NULL로 호출하는 경우 2번의 케이스에서는 컴파일 에러가 난다. NULL로 전달하는것을 막고 싶다면 func2처럼 구현하면 된다.

 

'C++' 카테고리의 다른 글

[C++] struct와 class  (0) 2019.06.26
[C++] move 함수 이해하기 - 기초  (0) 2019.06.24
[C++] 헷갈리기 쉬운 포인터 변수의 소멸조건  (0) 2019.04.30
[C++] namespace 란 무엇인가?  (0) 2019.04.21
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/12   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
글 보관함