문제

C ++ 파일을 가져 와서 템플릿 확장 패스를 실행하는 컴파일러 또는 독립형 전처리 기가 있습니까?

나는 템플릿이 여전히 새롭고 실험적이었던 90 년대 중반에 그러한 도구를 기억하며, 전처리 기는 기본 템플릿 지원이없는 컴파일러로 템플릿 프로그래밍을 수행하는 방법이었습니다.

이것은 매크로 처리 단계보다 훨씬 더 복잡합니다. 왜냐하면 컨텍스트를 이해하기 위해 코드를 구문 분석하고 토큰 화해야하기 때문입니다.

내 희망은 OpenCL 코드를 작성할 때 그러한 도구를 사용하는 것입니다. Opencl C ++이지만 템플릿을 지원하지 않습니다. 템플릿을 작성할 수 있기를 바랍니다. 심지어 정수 또는 부리 전용 인수와 같은 간단한 템플릿조차도 파일을 사전에 미리 정리하고 템플릿의 사용을 찾아서 호출을 확장하고 새로운 C ++ 코드를 제공합니다. OpenCL 컴파일러 ~할 수 있다 이해하다.

매우 제한된 도구조차도 유용 할 수 있으며, 모든 템플릿 Quirk를 지원하거나 여러 모듈이나 다른 모듈을 지원할 필요는 없습니다.

대안 : #define 모든 곳에서 매크로 .. 추악하고 안전하지 않으며 효율적이며 덜 다재다능합니다.

도움이 되었습니까?

해결책

comeau c ++ OpenCL이 C ++를 지원하지 않기 때문에 C ++를 "컴파일"할 수 있습니다. 이것은 C ++ - C에 훨씬 가깝습니다.

다른 팁

그러한 도구는 없습니다 - 템플릿은 일부 사전 프로세서 패스가 아닌 언어의 일부입니다. 다른 코드와 마찬가지로 컴파일러에서 처리합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top