Swift에서 C++ 코드를 사용하려고합니다. 언어 간 유형 변환에 대한 도움이 필요합니다. 주로 C++ 데이터 구조를 신속하게 이해할 수있는 형식으로 변환하는 코드 예제를 고맙게 생각합니다.C++ 데이터 구조에서 Swift로 변환 유형
예를 들어 나는 다음과 같은 방법을 C++ 파일에 가지고 있습니다.
struct IntPoint {
cInt X;
cInt Y;
};
typedef std::vector<IntPoint> Path;
void MinkowskiSum(const Path& pattern, const Path& path, Paths& solution, bool pathIsClosed)
{
Minkowski(pattern, path, solution, true, pathIsClosed);
Clipper c;
c.AddPaths(solution, ptSubject, true);
c.Execute(ctUnion, solution, pftNonZero, pftNonZero);
}
와 나는 헤더 파일에 다음과 같은 한 :
#ifdef __cplusplus
extern "C" {
#endif
void MinkowskiSum(const Path& pattern, const Path& path, Paths& solution, bool pathIsClosed);
#ifdef __cplusplus
}
#endif
와 스위프트 이해하고 "무효 MinkowskiSum (CONST 경로를 볼 수 있도록 내가 브리징 - header.h가 - 파일이 & 패턴, const 경로 & 경로, 경로 & 솔루션, bool pathIsClosed); " 방법.
그리고 Swift와 C++은 int와 같은 원시 데이터 구조를 사용하는 한 완벽하게 통신합니다. 그러나 Path와 같은 사용자 지정 구조를 사용하려고합니다 (위에서 설명한대로). Swift 로의 C++ Path 변환에 대한 코드 예제를 매우 고맙게 생각합니다.
Swift 파일에 IntPoint 및 Path를 구축했습니다. 나는 그 Swift 파일을 #include 참조와 함께 헤더 파일 (위 내용 참조)에 포함하려고합니다. 그러나 Xcode는 계속 오류를 발견하지 못합니다. 제가 누락 된 부분을 짐작할 수 있습니까? 제품 모듈 이름을 설정하고 모듈을 YES로 정의합니다. –
user3673836