Opis predvolené c a c ++ knižníc, ktoré program nadviaže spojenie s keď postavený pomocou Visual c ++

Preklady článku Preklady článku
ID článku: 154753 - Zobraziť produkty, ktorých sa tento článok týka.
Rozbaliť všetko | Zbaliť všetko

Na tejto stránke

SUHRN

Tento článok popisuje predvolené knižníc LIBC [D].LIB, LIBCMT [D].LIB, LIBCI [D].LIB, LIBCIMT [D].LIB, LIBCP [D].LIB, LIBCPMT [D].LIB, MSVCRT [D].LIB, MSVCIRT [D].LIB a MSVCPRT [D].LIB, že program nadviaže spojenie s keď postavený s využitím Visual C++.

DALSIE INFORMACIE

Keď zostavujete uvoľnenia (alebo ladenia) verzia vášho projektu v Visual C++, jeden z základné C Runtime knižnice (LIBC [D].LIB, LIBCMT [D].LIB a MSVCRT [D].LIB) je prepojený predvolene v závislosti na kompilátor možnosť si vybrať (singel-závitové <ml[d]>vláknami <mt[d]>, alebo viacvláknové DLL<md[d]>). Knižnica zo štandardu C ++ knižnica alebo jeden z staré iostream knižnice môže byť tiež spojená v závislosti od na hlavičky použijete kód. Napríklad, zvážte nasledovné prípady: <b00></b00></md[d]></mt[d]></ml[d]>

Prípad 1: Vzorka programu test1.cpp

// test1.cpp
void main()
{
}
				
  • Ak budete stavať test1.cpp pomocou /ML (alebo / MLd, pre ladiace Build) kompilátor možnosť, program bude odkaz s LIBC.LIB (alebo LIBCD.LIB, pre ladiť stavať), okrem toho, na iných knižníc.
    Poznámka: V /ML a / MLd knižnica kompilátor možnosti pre statické knižnice singel-závitové neboli odstránené v Visual c ++ 2005 a v novších verziách Visual C++.
  • Ak budete stavať test1.cpp pomocou /MT (alebo / MTdpre ladiace stavať) kompilátor možnosť, program bude odkaz s LIBCMT.LIB (alebo LIBCMTD.LIB, pre ladiace stavať), okrem iných knižnice.
  • Ak budete stavať test1.cpp pomocou /MD (alebo / MDdpre ladiace stavať) kompilátor možnosť, program bude odkaz s MSVCRT.LIB (alebo MSVCRTD.LIB, pre ladiace stavať), okrem iných knižnice. V tomto prípade program bude závisieť MSVCRT.Knižnice DLL (alebo MSVCRTD.Knižnica DLL pre ladiť stavať).

Prípad 2: Vzorka programu test2.cpp

   // test2.cpp
   #include <iostream>
   void main()
   {
   }
				
  • Ak budete stavať test2.cpp pomocou /ML (alebo / MLdpre ladiace stavať) kompilátor možnosť, program bude odkaz s LIBC.LIB (alebo LIBCD.KNIŽNICA pre ladiace stavať) a LIBCP.LIB (alebo LIBCPD.LIB, pre ladiť stavať), okrem toho, na iných knižníc.
    Poznámka: V /ML a / MLd knižnica kompilátor možnosti pre statické knižnice singel-závitové neboli odstránené v Visual c ++ 2005 a v novších verziách Visual C++.
  • Ak budete stavať test2.cpp pomocou /MT (alebo / MTdpre ladiace stavať) kompilátor možnosť, program bude odkaz s LIBCMT.LIB (alebo LIBCMTD.KNIŽNICA pre ladiace stavať) a LIBCPMT.LIB (alebo LIBCPMTD.LIB, pre ladiace stavať), popri iných knižníc.
  • Ak budete stavať test2.cpp pomocou /MD (alebo / MDd, pre ladiace Build) kompilátor možnosť, program nadviaže spojenie s MSVCRT.LIB (alebo MSVCRTD.LIB, pre ladiace stavať) a MSVCPRT.LIB (alebo MSVCPRTD.KNIŽNICA pre ladiace stavať), v okrem iných knižníc.
    Microsoft Visual c ++ 2008, program bude závislá na MSVCR90.DLL a MSVCP90.Knižnice DLL (alebo MSVCR90D.DLL a MSVCP90D.Knižnica DLL pre ladiace stavať).
    Pre Microsoft Visual c ++ 2005, program bude závislé na MSVCR80.DLL a MSVCP80.Knižnice DLL (alebo MSVCR80D.DLL a MSVCP80D.Knižnica DLL pre ladiace stavať).
    Programu Microsoft Visual c ++ 2003, program bude závislé na MSVCR71.DLL a MSVCP71.Knižnice DLL (alebo MSVCR71D.DLL a MSVCP71D.Knižnica DLL pre ladiace stavať).
    Pre program Microsoft Visual c ++ 2002, program bude závislé na MSVCR70.DLL a MSVCP70.Knižnice DLL (alebo MSVCR70D.DLL a MSVCP70D.Knižnica DLL pre ladiace stavať).
    Pre Microsoft Visual c ++ 6.0, program bude závislé na MSVCRT.DLL a MSVCP60.Knižnice DLL (alebo MSVCRTD.DLL a MSVCP60D.Knižnica DLL pre ladiace stavať).
    Microsoft Visual c ++ 5.0, program bude závislá na MSVCRT.DLL a MSVCP50.Knižnice DLL (alebo MSVCRTD.DLL a MSVCP50D.Knižnica DLL pre ladiace stavať).
    Pre Microsoft Visual c ++ 4.2, program bude závisieť MSVCRT.Knižnice DLL (alebo MSVCRTD.Knižnica DLL pre ladiace vybudovať) a MSVCPRT.LIB (alebo MSVCPRTD.KNIŽNICA, pre ladiace stavať).

Prípad 3: Vzorka programu test3.cpp

Poznámka: Prúd hlavičkové súbory, ktoré majú príponu hodnôt za rok (zahŕňajú <useoldio.h>) už nepoužíva Visual C++ 2002 a boli odstránené v Visual c ++ 2005 a Visual C++ 2003. Preto tieto vzorky nebude fungovať vo verzii programu Visual C++ najneskôr Visual C++ 2002.<b00></b00></useoldio.h>
// test3.cpp
#include <iostream.h>
void main()
{
}
				
  • Ak budete stavať test3.cpp pomocou /ML (alebo / MLdpre ladiace stavať) kompilátor možnosť, program bude odkaz s LIBC.LIB (alebo LIBCD.KNIŽNICA pre ladiace stavať) a LIBCI.LIB (alebo LIBCID.LIB, pre ladiť stavať), okrem toho, na iných knižníc.
    Poznámka: V /ML a / MLd knižnica kompilátor možnosti pre statické knižnice singel-závitové neboli odstránené v Visual c ++ 2005 a v novších verziách Visual C++.
  • Ak budete stavať test3.cpp pomocou /MT (alebo / MTdpre ladiace stavať) kompilátor možnosť, program bude odkaz s LIBCMT.LIB (alebo LIBCMTD.KNIŽNICA pre ladiace stavať) a LIBCIMT.LIB (alebo LIBCIMTD.LIB, pre ladiace stavať), popri iných knižníc.
  • Ak budete stavať test3.cpp pomocou /MD (alebo / MDdpre ladiace stavať) kompilátor možnosť, program bude odkaz s MSVCRT.LIB (alebo MSVCRTD.KNIŽNICA pre ladiace stavať) a MSVCIRT.LIB (alebo MSVCIRTD.LIB, pre ladiace stavať) popri iných knižníc. V tomto prípade sa váš program bude závisieť MSVCRT.Knižnice DLL (alebo MSVCRTD.Knižnica DLL pre ladiace stavať) a MSVCIRT.Knižnice DLL (alebo MSVCIRTD.Knižnica DLL pre ladiace stavať).
Hlavičky určiť či štandardnej c ++ knižnice, staré iostream knižnice alebo ani budú prepojené. Kompilátor možnosti)Získate [d], /MT [d], /MD [d]) zistiť, ktorá verzia knižnice singel-závitové, vláknami alebo vláknami DLL je v predvolenom nastavení prepojený.

Poznámka: To sa môže zdať, že hlavičky bez prípony hodnôt za rok sú štandard C ++ hlavičky a že hlavičky s príponou hodnôt za rok sú C Runtime hlavičky alebo staré iostream hlavičky. To nie je pravda. Ako je vysvetlené nižšie, súbory <useoldio.h>a <use_ansi.h>určiť knižniciach vaše žiadosť bude odkaz s.<b00></b00></use_ansi.h></useoldio.h>

Skutočne, existujú dve hlavičkové súbory, <useoldio.h>a <use_ansi.h>, ktoré obsahujú #pragmas. #Pragmas platnosti staré iostream knižnice alebo štandardnej c ++ knižnica spojený v predvolenom.<b00></b00></use_ansi.h></useoldio.h>

Hlavička súboru <useoldio.h>obsahuje # pragma vyhlásenia, ktoré platnosť starého iostream knižnicu, pre ktorú spojené v. Všetky staré iostream hlavičky obsahujú <useoldio.h>. Takže ak ste zahrnuli všetky staré iostream hlavička v aplikácii, staré iostream knižnice bude viazaná predvolené. Nasledujúca tabuľka obsahuje zoznam všetkých hlavičkové súbory, ktoré obsahujú <useoldio.h>.<b00></b00></useoldio.h></useoldio.h></useoldio.h>

Staré iostream hlavičky

Zbaliť túto tabuľkuRozbaliť túto tabuľku
FSTREAM.HIOMANIP.H
IOS.HIOSTREAM.H
ISTREAM.HOSTREAE.H
STDIOSTR.HSTREAMB.H
STRSTREA.H
Poznámka: <useoldio.h>platí len pre Visual C++.NET 2003 a v starších verziách. Pretože starý iostream knižnice bol odstránený z Visual C++ 2003 a novšími verziami, <useoldio.h>hlavičky aj bola odstránená.</useoldio.h></useoldio.h>
Hlavička súboru <use_ansi.h>obsahuje # pragma výkazy že účinnosti štandardnej c ++ knižnica viazané v. Všetky štandardné c ++ hlavičky zahŕňať <use_ansi.h>. Takže ak ste zahrnúť hlavičku akejkoľvek štandardnej c ++ v vaše aplikácie, v predvolenom nastavení bude prepojený štandardnej c ++ knižnica. Nasledujúce tabuľka obsahuje zoznam všetkých hlavičkové súbory, ktoré obsahujú <use_ansi.h>.<b00> </b00> </use_ansi.h> </use_ansi.h> </use_ansi.h>

Štandardnej c ++ hlavičky

Zbaliť túto tabuľkuRozbaliť túto tabuľku
ALGORITMUSBITSETKOMPLEXDEQUE
FSTREAMFUNKČNÉIOMANIPIOS
IOSFWDIOSTREAMISTREAMOPAKOVAČA
LIMITYZOZNAMLOCALEMAPA
PAMÄTENUMERICKEJOSTREAEFRONT
NASTAVIŤSSTREAMZÁSOBNÍKSTDEXCEPT
STREAMBUFREŤAZECSTRSTREAMTYPEINFO
POMÔCKAVALARRAYVEKTORXIOSBASE
XLOCALEXLOCINFOXLOCMONXLOCNUM
XLOCTIMEXMEMORYXSTRINGXTREE
XUTILITYYMATH.H
Nemôžete zmiešajte volanie na staré iostream knižnice a nové Štandardnej c ++ knižnica v Visual C++ 4.2.
Zbaliť túto tabuľkuRozbaliť túto tabuľku
Zostaviť možnosťKnižnice spojené s
ZÍSKATE (VC ++.NET 2003 a starších)LIBC.LIB, LIBCP.LIB
/ MLd (VC ++.NET 2003 a starších)LIBCD.LIB, LIBCPD.LIB
/MTLIBCMT.LIB, LIBCPMT.LIB
/ MTdLIBCMTD.LIB, LIBCPMTD.LIB
/MDMSVCRT.LIB, MSVCPRT.LIB
/ MDdMSVCRTD.LIB, MSVCPRTD.LIB

Súhrnná tabuľka na CRT DLL používa

Zbaliť túto tabuľkuRozbaliť túto tabuľku
Dovozné knižnica spojené s DLL použité (Visual C++ 5.0|6.0) DLL použité (Visual C++.ČISTÉ 2002|Visual C++.NET 2003) DLL použité (Visual C++ 2005|Visual C++ 2008
MSVCRT.LIB MSVCRT.KNIŽNICA DLL MSVCR7(0|1).KNIŽNICA DLL MSVCR(80|90).KNIŽNICA DLL
MSVCRTD.LIB MSVCRTD.KNIŽNICA DLL MSVCR7 (0|1) D.DLL MSVCR (80|90) D.DLL
MSVCPRT.LIB MSVCP (5|6) 0.DLL MSVCP7(0|1).KNIŽNICA DLL MSVCP(80|90).KNIŽNICA DLL
MSVCPRTD.LIB MSVCP (5|6) 0 D.KNIŽNICA DLL MSVCP7 (0|1) D.DLL MSVCP (80|90) D.DLL
MSVCIRT.LIB MSVCIRT.KNIŽNICA DLL
MSVCIRTD.LIB MSVCIRTD.KNIŽNICA DLL

ODKAZY

C Run-Time Libraries
http://msdn.Microsoft.com/en-us/library/abx4dbyh.aspxĎalšie informácie získate po kliknutí na nasledujúce číslo článku databázy Microsoft Knowledge Base:
154419Štandardnej c ++ knižnica najčastejšie otázky

Vlastnosti

ID článku: 154753 - Posledná kontrola: 17. októbra 2011 - Revízia: 2.0
Informácie v tomto článku sa týkajú nasledujúcich produktov:
  • Microsoft Visual C++ 2008 Express Edition
  • Microsoft Visual C++ 2005 Express Edition
  • Microsoft Visual C++ .NET 2003 Standard Edition
  • Microsoft Visual C++ .NET 2002 Standard Edition
  • Microsoft Visual C++ 5.0 Professional Edition
  • Microsoft Visual C++ 5.0 Enterprise Edition
  • Microsoft Visual C++ 4.2 Enterprise Edition
Kľúčové slová: 
kbarttypeinf kbcompiler kbinfo kblangcpp kbmt KB154753 KbMtsk
Strojovo preložené
DÔLEŽITÉ: Tento článok bol preložený pomocou softvéru na strojový preklad od spoločnosti Microsoft, nie prekladateľom. Spoločnosť Microsoft ponúka články preložené prekladateľmi aj strojovo preložené články, vďaka čomu máte možnosť prístupu ku všetkým článkom databázy Knowledge Base vo svojom jazyku. Strojovo preložený článok však nie je vždy perfektný. Môže obsahovať chyby týkajúce sa slovnej zásoby, syntaxe alebo gramatiky, podobne ako cudzinec môže robiť chyby, keď rozpráva vašim jazykom. Spoločnosť Microsoft nenesie zodpovednosť za akékoľvek nepresnosti, chyby alebo škody spôsobené akýmkoľvek nepresným prekladom obsahu alebo jeho použitím zo strany zákazníkov. Spoločnosť Microsoft softvér na strojový preklad pravidelne aktualizuje.
Pokiaľ chcete vidieť anglickú verziu článku, kliknite sem:154753

Odošlite odozvu

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com