I am learning VC ++, but I wonder why end users also need MSVC ++?
As far as I can see in MSDN, most, if not all libraries that use my programs (actual DLL files) already come with the system itself (user32.dll, kernel32.dll, etc.).
But why Paint and Notepad do not need MSVC ++, but my software, which is simpler than Notepad, requires this runtime? What does the runtime do? How it works? Is there a way to get my software to work without MSVC ++?
, std::string std::vector, , , .. Windows , Visual ++ , , , (Windows DLL, ).
std::string
std::vector
, . /MT build, . DLL , Windows.
/MT
" " "C/++ → →
, , ( , Windows) , , .
:
Visual Studio. DLL- , () "" , DLL .
, , , DLL, DLL. , Windows DLL ( ).
, , , , ( ).
() DLL , ( Debug vs. Release) DLL. - . (malloc, calloc, new) . - , IMalloc, , , free/delete , .
malloc
calloc
new
IMalloc
free
delete