c++ 썸네일형 리스트형 멤버함수 포인터 C++은 함수 포인터가 있습니다. 포인터가 주소를 저장한 변수이고 함수또한 특정 주소에 저장된 값이죠. 그러므로 함수포인터는 그 함수의 주소를 가리키고 있는것입니다 멤버 함수 포인터는 클래스의 멤버 함수를 가르키고 있는 포인트 변수 겠지요 그럼 이게 뭐가 다를까요? 지난 번에 이야기했듯이 멤버함수는 첫번째 숨겨진 패러미터로 this를 가지고 있습니다. 일반 함수포인터에 멤버함수를 넣으면 패러미터가 달라서 에러가 뜨게 됩니다. 그럼 this가 없는 Static 함수는 대입이 가능한가요? 넵! Static함수는 대입이 가능합니다. 이제부터 아래코드를 보시죠 // 핵심 1. 일반함수 포인터에 멤버함수의 주소를 담을 수 없다. // 핵심 2. 일반 함수 포인터에 static 멤버함수의 주소를 담을 수 있다. /.. 더보기 [C++] Method Call 클래스객체에서 필드는 메모리에 여러개지만 메소는 하나뿐인데 어떻게 구분할까요? class Point { int x=0, y=0; public: void Set(int a,int b) { x = a; y = b; } }; int main() { Point p1; Point p2; p1.Set(10,20); } 멤버 함수는 1번째 인자로 객체의 주소(this)가 추가됩니다 위에 Set은 실제는void Set(Point* const this, int a, int b) 이런식으로 호출되는데요 class Point { int x=0, y=0; public: void Set(Point* const this, int a, int b) { this->x = a this->y = b } }; 코드를 바꿔보면 위와 같이 .. 더보기 VS Code에서 Boost Library 사용법 VS Code에서 C++사용법에 관한 글은 아주 아주 많습니다. 그러나 Boost Library 세팅방법은 찾을 수 가 없습니다. 이걸 당신 찾았다면 Lucky You. 처음에는 한참 c_cpp_properties.json을 수정했는데 VS code는 intellisense하고 compile하고 처리하는 부분이 다르다고 합니다 즉 에디터와 컴파일러가 교류가 없어요. c_cpp_properties.json는 에디터 즉intellisense 부분이었습니다. 컴파일과 실행을 담당하는 부분은 tasks.json파일이구요 1. 부스트 라이브러리 다운 & 압축풀기 www.boost.org/users/download/ Boost Downloads Current Release Version 1.74.0 August 1.. 더보기 이전 1 다음