Make Unreal REAL.
article thumbnail
레퍼런스의 내부적인 처리
C++/최적화 2023. 1. 21. 11:58

int pointer(int* p) { return *p; } int reference(int& ref) { return ref; } void func() { int num = 3; num = pointer(&num); num = reference(num); } 위 코드에서 p 포인터 변수는 num의 주소 값을 갖고 있고, ref 변수는 num과 정확히 같은 변수를 뜻한다. 내부적으로 어떤 차이가 있는지 disassembly 해보았다. pointer(int*): push rbp mov rbp, rsp mov QWORD PTR [rbp-8], rdi mov rax, QWORD PTR [rbp-8] mov eax, DWORD PTR [rax] pop rbp ret reference(int&): push rb..

검색 태그