2012-10-24 3 views
0

현재 C-Interpreter에서 작동합니다. 이제는 조금 최적화하고 싶습니다. 매크로를 확장하는 가장 빠른 방법은 무엇입니까? 예 : 전체 코드를 살펴보고 객체와 비슷한 매크로를 찾습니다. 소스 파일의이 지점에서 전체 번역 단위 (현재 파일뿐만 아니라)를 거쳐 매크로 이름으로 식별자를 검색하고이를 대체 목록으로 바꿔야합니다. 20 개의 매크로가 있다면 20 번 스캔해야합니다. 그것은 치명적인 성능 희생자입니다. 누구든지 다른 전처리 기가 매크로 확장을 처리하는 방법을 알고 있습니까?빠른 매크로 확장

+0

이 처리기는 연타에 렉서에 연결되어 방법을 살펴 사용할 수 있습니다. 이런 식으로 별도의 전처리 단계조차 필요하지 않습니다. 토큰 화 중에 발생합니다. –

답변

1

같은 조회를 들어, 의 HashMap, 또는 지도, 또는 이진 트리를 사용할 수 있습니다.

의 HashMap 사용하기 쉽게, 당신은 C의 ++를 사용하는 경우, 당신은 a STL hash_map