C에서는 어렵겠지만 C++에서 이름으로 변수를 만드는 건 어려운 일이 아니다.
std::map<std::string, int> variable_map;
void set_variable(const std::string& str, int value)
{
variable_map[str] = value;
}
int get_variable(const std::string& str)
{
return variable_map[str];
}
거의 꼼수 수준이긴 하지만. (느리기도 하겠고)
문제는, 지금 하고 싶은 것은 "a"라는 변수를 읽을 때마다 "handler_a" 라는 함수를 호출하고 싶다는 것이다. 앞의 handler_는 다 똑같다고 봤을 때, 결국 문제는 함수 이름으로 함수를 호출할 수 있느냐는 것이다.
C++을 버리면 간단하겠지만 그러지 않는 편이 좋으니까..
고민 답 나오면 추가함. :$
more..

댓글을 달아 주세요