programming/c++

[c++] MT, MD 차이

LEIBNIZ 2017. 2. 1. 12:58

* MT

 - Multi Thread

 - CRT 라이브러리를 정적 라이브러리로 링크하는 것

 - CRT 라이브러리를 실행파일(EXE, DLL)에 포함시키겠다는 의미로 생각하면된다.

 -  실행파일에 CRT라이브러리를 넣기 때문에 파일 사이즈가 커진다.

 - MT는 모든 실행파일(DLL, EXE)에  각각의 파일들이 사용하는 힙메모리가 생성된다 ( n개의 DLL파일에 n개의 독립적인 CRT 힙메모리)



* MD

 - Multi Thread DLL

 - CRT 라이브러리를 DLL로 제공하겠다는 것

 - MT에 비해 파일 사이즈가 작음

 - CRT DLL이 없는 환경에서는 사용 불가

 - MD는 모든 실행파일(DLL, EXE) 이 사용하는 하나의 힙메모리가 생성된다 ( n개의 DLL파일에 1개의 공통 CRT 힙메모리)


출처 : http://blog.naver.com/PostView.nhn?blogId=ppusarida&logNo=40167344277