728x90
반응형
남겨진 코드를 쫓다 보니 함수형 프로그래밍의 초입까지 도착한 것 같다. 우선 가장 간단하게 함수 이름으로 함수를 실행시키는 코드가 필요했다. 이런저런 복잡한 코드가 많았는데 Windows와 gcc를 사용하는 os와의 차이는 조금 있는 것 같다. 나는 우선 windows를 사용하니
#include <Windows.h>
typedef void(&u_func)(char*);
void hello(char* name)
{
printf("hello %s !!\n", name);
}
int main()
{
HMODULE module = GetModuleHandle(NULL);
FARPROC proc = GetProcAddress(module, "hello");
hello("Tom");
return 0;
}
이렇게 간단하게 구현해 봤다. 함수형 포인터를 선언하고 Loadlibrary 하듯이 실행하면 되었다. 기존에 사용하던 explicit linking과 크게 다르지 않아서 이해하기는 쉬웠다. 멀고 먼 metaclass의 세계로 빠져보자.
728x90
반응형
'Program Language > C & C++' 카테고리의 다른 글
[C++] 스마트 포인터 (0) | 2021.10.25 |
---|---|
[C++] emplace_back (0) | 2021.10.25 |
error C2558 : no copy constructor available or copy constructor is declared 'explicit' (4) | 2021.10.21 |
[C++] std::async (0) | 2021.10.19 |
[C++] values (0) | 2021.10.08 |