함수 정의를 대체 할 매크로를 만들려고합니다. 이 매크로는 어떤 배열에 함수의 이름을 등록하여 다른 매크로가 배열 요소로 뭔가를 할 수있게합니다.전 처리기 배열 생성
새로운 기능을 추가 할 때마다 목록을 편집 할 필요없이 콘솔에서 사용할 수있는 기능 목록을 갖기 위해이 기능을 사용하고 싶습니다. 실제로는 여러 목록입니다.
조금 읽은 후 부스트 전 처리기를 살펴 보았습니다. 불행히도 새 배열을 '저장할'방법이 없다고합니다. (난 경우에 저를 수정하시기 바랍니다
#define SOME_ARRAY (0,())
#define CONSOLE_COMMAND(a) \
#redefine SOME_ARRAY BOOST_PP_ARRAY_PUSH_BACK(SOME_ARRAY, #a) \
void a(some_arguments)
불행하게도, 내 지식, 존재하지 않는 재정의하고 #DEFINE 매크로에서 사용할 수 없습니다 : 내가하고 싶은 무엇 이 같은 것입니다 잘못된).
부스트의 프리 컴파일러의 SLOT을 살펴 보았지만 일단 설정하면 변수를 변경할 수 있다고 생각하지 않습니다.
내 전처리기를 쓰는 것 외에 다른 방법이 있습니까? 그렇습니다. 어떻게 작성하는 것이 좋을까요? (Code :: Block과 함께 MinGW 사용).
전 처리기를 사용하지 않고도 문제를 쉽게 해결할 수있는 방법이 있습니다. 왜 그 문제를 설명하지 않니? – jrok