나는 C로 작성된 파일 몇 개를 가지고 있으며, 나는 이들 파일을 C++ 호환으로하고 싶다. C++ : extern 및 인라인 함수
#ifdef __cplusplus
extern "C" {
#endif
파일의 시작 부분에
과 마지막 과정
#ifdef __cplusplus
}
#endif
...의
. 하지만 '인라인'키워드에 문제가있는 것 같습니다. 내 솔루션은 단순히 C++에 대한 인라인 키워드를 제거하는 것이지만 C++ 프로그램에 나쁜 영향을 미칠 수 있다고 생각합니다. 이러한 함수는 시간의 gazillions라고합니다.더 좋은 솔루션이 있습니까?
여러 곳에서 여러 개의 정의 오류를 얻을 것입니다. 게다가 논리는 역방향입니다 :'inline' 키워드를 지원하는 C++과 그렇지 않은 C89/C90입니다. –
잘 작동하는 것 같습니다. 어쨌든, 공정하게, 관심있는 모든 C 및 C++ 컴파일러는 '인라인'키워드를 지원합니다. 문제는 C++에서 "extern"을 추가해야하고 인라인 키워드와 충돌이 발생한다고 생각합니다. – Suugaku
표준 C++ 03에서,'inline' 함수는 자동적으로'extern'입니다. 'extern'없이 작동합니까? –