C 33

C11이 익명 구조를 지원하지 않는 이유는 무엇입니까?

C11이 익명 구조를 지원하지 않는 이유는 무엇입니까? C11은 다음과 같은 익명 구조를 지원합니다. struct Foo { struct { size_t x, y; }; }; struct Foo f; f.x = 17; f.y = 42; 기본적으로 그런 멤버들은.struct마치 그들이 동봉한 구성원인 것처럼 취급됩니다.struct또는union(따라서, 주변 구조 자체가 익명인 경우). 익명 구조를 포함하지 않는 C++11의 근거는 무엇이었습니까?이들은 일반적으로 유용하지 않습니다(대부분 유니언 내부에서, 식별자의 타이핑을 제거합니다).struct), 물론입니다.그러나 최소한 C11 표준과의 호환성을 유지하기 위해 논의되었을 것이라는 점에서 사양(및 이미 많은 컴파일러에 의해 구현된 사양)에 충분히 추가된 ..

programing 2023.06.28

디버깅 정보를 찾을 수 없거나 Visual Studio의 디버깅 정보와 일치하지 않습니다.

디버깅 정보를 찾을 수 없거나 Visual Studio의 디버깅 정보와 일치하지 않습니다. 기존 프로젝트를 복사하고 폴더 이름을 변경했습니다.이제 응용 프로그램을 컴파일할 때 이 오류가 발생합니다. 디버깅 정보를 찾을 수 없거나 일치하지 않습니다.로드된 기호가 없습니다. 디버깅을 계속하시겠습니까? 예를 클릭하면 컴파일되고 정상적으로 실행됩니다.하지만 이제 저는 그 메시지를 처리해야 합니다.프로젝트 속성을 중지하기 위해 변경하는 내용이 궁금합니다. 프로젝트에 대한 디버깅 정보를 비활성화했을 수 있습니다. 프로젝트에서 마우스 오른쪽 단추를 클릭합니다. -> 구성 속성 -> 링커 -> 디버깅 "디버깅 정보 생성"을 "아니오"에서 "예"로 전환 프로젝트를 다시 빌드하고 다시 시도하십시오. 이제 메시지 없이 실행..

programing 2023.06.23

C++ 애플리케이션에서 Java 메서드에 액세스하는 방법

C++ 애플리케이션에서 Java 메서드에 액세스하는 방법 간단한 질문입니다.c/c++에서 자바 함수를 호출할 수 있습니까?네, 할 수 있지만 약간 복잡하며 반사형/비형 안전한 방식으로 작동합니다(예: C 버전보다 조금 더 깨끗한 C++ API 사용).이 경우 C 코드 내에서 Java VM의 인스턴스를 생성합니다.Java에서 처음 네이티브 코드를 호출하는 경우 VM 인스턴스를 구성할 필요가 없습니다. #include #include int main(int argc, char** argv) { JavaVM *vm; JNIEnv *env; JavaVMInitArgs vm_args; vm_args.version = JNI_VERSION_1_2; vm_args.nOptions = 0; vm_args.ignoreU..

programing 2023.06.08