가상 함수 vptr(virtual pointer) - C++/C#/CS 기초
가상 함수 vptr(virtual pointer)
📌 개념 정리
💻 예제
1
2
3
4
class Animal {
public:
virtual void Speak() { cout << "Animal\n"; }
};
- 객체가 생성되면
vptr
이 초기화되어 vtable을 참조. -
a->Speak();
호출 시 vptr → vtable → 실제 함수 주소 실행.
⚡ 주의점
- 모든 객체마다 vptr 1개 저장 (메모리 오버헤드).
- 다형적 동작 없으면 불필요한 비용.
🔗 관련 페이지
This post is licensed under CC BY 4.0 by the author.