C 표준 라이브러리에서 제공하는 구조체 및 함수 선언을 전달할 수 있습니까?C 표준 라이브러리의 전달 엔티티를 선언 하시겠습니까?
나의 배경은 C++이며 대답은 아니오입니다. 이것의 주된 이유는 C++ 표준 라이브러리에 의해 위임 된 구조체 나 클래스가 배후에있는 템플릿이 될 수 있고 "비밀"템플릿 매개 변수를 가질 수 있으므로 순진한 비 템플릿 선언으로 적절하게 선언 할 수 없다는 것입니다. 사용자가 특정 구현의 특정 버전에서 특정 엔터티를 선언하는 방법을 정확히 파악하더라도 구현시 은 향후 버전의을 중단하지 않아도됩니다.
나는 손에 어떤 C 표준의 사본을 가지고 있지 않지만 분명히 C.
에는 템플릿그래서는 C 표준 라이브러리에서 엔티티를 선언 전달하는 법적 없다?
C++ 표준 라이브러리의 엔터티가 전달 선언되지 않을 수있는 또 다른 이유는 구현에서 제공하는 헤더가 일반 규칙을 따르지 않아도된다는 것입니다. 예를 들어 최근 질문에서 필자는 구현에서 제공 한 C++ 헤더가 실제 파일이어야하고 대답이 '아니오'인지 묻습니다. 그 중 하나가 C.
에 적용되는 경우 나는은 C 표준 라이브러리는 C 및 C++하지만이 질문에 대해 나는 단지 C.에 대해 부탁 해요 모두 사용이
예 당신은 당신의 컴파일러를 만들 정의 어딘가에 있다는 것을 알고 단지 헤더 파일 – Gopi
AFAIK의 선언을 할 수 있습니다 C. 함수와 구조체를 선언 전달할 수 있습니다, 당신은 확실히'C' 표준을 선언 전달할 수 있습니다 라이브러리 기능을 사용하여 해당 헤더 파일을 포함하는 요구 사항을 제거하지만 _recommended._ –
@SouravGhosh가 아닌 것으로 생각합니다. 권장하지 않지만 일반적으로 작동하는 것은 내가 묻는 언어 변호사의 우스운 경우입니다! – Praxeolitic