이러한 호출은 적어도 직접적으로 포팅 할 수 없습니다. gcnew
은 C ++ 키워드가 아닙니다. 현재 gcc에서 지원하지 않는 다른 언어 인 “C ++ / CLI”에서 가져온 것입니다. 이 이전 SO 질문 에는 한 번 지원하려고 시도했지만 2009 년 이후로 죽은 것 같습니다.
이를위한 유일한 합리적인 방법은 모든 관리 코드를 표준 C ++로 이식 한 다음 gcnew
및 gcroot
는 더 이상 필요하지 않습니다.
DocBrown의 답변 외에도 기존 가비지 수집기 라이브러리 (예 : Boehm s conservati 코드에 GC 또는 RavenBrook의 MPS 또는 자체 GC)를 입력합니다. 이 항목 도 참조하세요.
이러한 GC를 사용하는 것은 쉽지 않을 수 있습니다 (고통의 가치도 없을 수 있으며 GC없이 정품 C ++ 수동 관리 및 스마트 포인터를 사용하려면 GC 기술, 개념, 용어 및 함정을 확실히 알고 있어야합니다. 따라서 GC 핸드북 을 읽어보십시오.
또한 기존 C ++ 프레임 워크 라이브러리 사용을 고려할 수도 있습니다. Qt 또는 POCO 또는 부스트 .
기본적으로 코드를 더 표준적인 C ++ (예 : C ++ 14 이상)로 다시 작성해야합니다.
댓글