VS 또는 CRT가 설치되어 있지 않은 OS에서 실행중인 C++ 프로그램의 디버그 버전을 사용하는 경우에도 디버그 어설 션 오류 상자가 표시됩니까?CRT가 설치되어 있지 않으면 C++에서 Debug Assertions를 얻을 수 있습니까?
"디버그 어설 션 실패!"
또는 컴퓨터에 CRT 또는 Visual Studio와 같은 특정 구성 요소가 설치되어있을 때만 나타 납니까?
VS 또는 CRT가 설치되어 있지 않은 OS에서 실행중인 C++ 프로그램의 디버그 버전을 사용하는 경우에도 디버그 어설 션 오류 상자가 표시됩니까?CRT가 설치되어 있지 않으면 C++에서 Debug Assertions를 얻을 수 있습니까?
"디버그 어설 션 실패!"
또는 컴퓨터에 CRT 또는 Visual Studio와 같은 특정 구성 요소가 설치되어있을 때만 나타 납니까?
실행할 수 있다면 가능합니다./MDd (기본값)로 컴파일하면 동적 CRT의 디버그 버전을 배포해야합니다. 그것은 재배포 가능 구성 요소가 아니며 어쨌든 라이센스 위반입니다./MTd를 사용하여 컴파일하면이 문제를 해결할 수 있습니다.
물론 디버그 어설 션이 실패한 이유는 사용자가 무시할 수없는 이유를 이해하지 못합니다. 최고의 회피.
응용 프로그램을 작성한 방법에 따라 다릅니다. 디버그 CRT에 동적으로 링크하는 경우 개발자가 아니라면 사용자가 시스템에서 디버그 CRT를 갖지 않을 가능성이 매우 높습니다 (실제로 VS 라이선스로 인해 배포 할 수는 없습니다). 따라서이 경우에는 실행되지 않습니다. CRT에 정적으로 링크하면 디버그 빌드를 선적 한 사용자에게 어설 션이 표시됩니다.