å¦æä½ æä¸å®çCåºç¡å¯è½å¦èµ·æ¥æ¯è¾å®¹æäº,ä½æ¯å¦ä¹ C++çè¿ç¨ä¸åè¦å°½éé¿å
å»ä½¿ç¨ä¸äºCä¸çææ³;å¹³æ¶è¿è¦å¤çä¸äºé«æåç代ç ,éå°é®é¢å¤å¤æè,ææ ·æè½æé®é¢æ½è±¡å,以使èªå·±å¤´èä¸æç±»çæ¦å¿µ;æåå«å¿äºç»å¸¸ä¸æºèªå·±è°è°ç¨åº,è¿æ¯è°ä¹ä»£æ¿ä¸äºç.
C++ç±»åºä»ç»
å次ä½ç°äºC++ä¿ææ ¸å¿è¯è¨çæçåæ¶å¤§ååå±åºç¨åºçåå±è¶å¿!!å¨C++ä¸ï¼åºçå°ä½æ¯é常é«çãC++ä¹ç¶ Bjarne Stroustrupå
çå¤æ¬¡è¡¨ç¤ºäºè®¾è®¡åºæ¥æ©å
åè½è¦å¥½è¿è®¾è®¡æ´å¤çè¯æ³çè¨è®ºãç°å®ä¸ï¼C++çåºé¨ç±»ç¹å¤ï¼è§£å³çé®é¢ä¹æ¯æå
¶å¹¿æ³ï¼åºä»è½»é级å°éé级çé½æãä¸å°é½æ¯è®©äººç¼ç大å¼ï¼äº¦ææ¯æèçå¹çæç»´æ°ä½ãç±äºåºçæ°éé常åºå¤§ï¼èä¸éäºç¬è
æ°´å¹³ï¼å
¶ä¸å¾å¤å¹¶ä¸äºè§£ãæ以æä¸ææçä¸äºåºé½æ¯æ¯è¾èåç大ååºã
æ ååº
æ ååºä¸æä¾äºC++ç¨åºçåºæ¬è®¾æ½ãè½ç¶C++æ ååºéçC++æ åæè
¾äºè®¸å¤å¹´ï¼ç´å°æ åçåºå°ææ£å¼å®åï¼ä½æ¯å¨æ ååºçå®ç°ä¸å´å¾ä»¤äººæ¬£æ
°å¾çå°å¤ç§å®ç°ï¼å¹¶ä¸å·²è¢«å®è·µè¯æ为æå·¥ä¸çº§å«å¼ºåº¦çä½³ä½ã
1ã Dinkumware C++ Library
åèç«ç¹ï¼
http://www.dinkumware.com/'>
http://www.dinkumware.com/ P.J. Plaugerç¼åçé«åè´¨çæ ååºãP.J. Plaugerå士æ¯Dr. Dobb'sç¨åºè®¾è®¡æ°åºå¥çè·å¾è
ãå
¶ç¼åçåºé¿æ被Microsoftéç¨ï¼å¹¶ä¸æè¿Borlandä¹åå¾äºå
¶OEMçlicenseï¼å¨å
¶C/C+ +ç产åä¸éç¨Dinkumwareçåºã
2ã RogueWave Standard C++ Library
åèç«ç¹ï¼
http://www.roguewave.com/'>
http://www.roguewave.com/'>
http://www.roguewave.com/'>
http://www.roguewave.com/ è¿ä¸ªåºå¨Borland C++ Builderçæ©æçæ¬ä¸æ¾ç»è¢«éç¨ï¼åæ¥è¢«å
¶ä»çåºç»æ¿æ¢äºãç¬è
ä¸æ¨è使ç¨ã
3ãSGI STL
åèç«ç¹ï¼
http://www.roguewave.com/'>
http://www.roguewave.com/'>
http://www.roguewave.com/'>
http://www.roguewave.com/ SGIå
¬å¸çC++æ å模çåºã
4ãSTLport
åèç«ç¹ï¼
http://www.stlport.org/'>
http://www.stlport.org/ SGI STLåºç跨平å°å¯ç§»æ¤çæ¬ã
åæ ååºââBoost
Boost åºæ¯ä¸ä¸ªç»è¿åé¤ç¾ç¼ãå¯ç§»æ¤ãæä¾æºä»£ç çC++åºï¼ä½ä¸ºæ ååºçåå¤ï¼æ¯C++æ ååè¿ç¨çåå¨æºä¹ä¸ã Booståºç±C++æ åå§åä¼åºå·¥ä½ç»æååèµ·ï¼å¨C++社åºä¸å½±åç大ï¼å
¶æåå·²è¿2000人ã Booståºä¸ºæ们带æ¥äºææ°ãæé
·ãæå®ç¨çææ¯ï¼æ¯ä¸æä¸æ£ç"å"æ ååºã
Boostä¸æ¯è¾æåæ°çæè¿ä¹å 个åºï¼
Regex
æ£å表达å¼åº
Spirit
LL parser frameworkï¼ç¨C++代ç ç´æ¥è¡¨è¾¾EBNF
Graph
å¾ç»ä»¶åç®æ³
Lambda
å¨è°ç¨çå°æ¹å®ä¹çå°å¿åçå½æ°å¯¹è±¡ï¼å¾å®ç¨çfunctionalåè½
concept check
æ£æ¥æ³åç¼ç¨ä¸çconcept
Mpl
ç¨æ¨¡æ¿å®ç°çå
ç¼ç¨æ¡æ¶
Thread
å¯ç§»æ¤çC++å¤çº¿ç¨åº
Python
æC++ç±»åå½æ°æ å°å°Pythonä¹ä¸
Pool
å
åæ± ç®¡ç
smart_ptr
5个æºè½æéï¼å¦ä¹ æºè½æéå¿
读ï¼ä¸ä»½ä¸éçåèæ¯æ¥èªCUJçæç« ï¼
Smart Pointers in Boost,å¦ï¼è¿ç¯æç« å¯ä»¥æ¥å°ï¼CUJæ¯æä¾å¨çº¿æµè§çãä¸æçè§ç¬è
å¨ãDr. Dobb's Journal软件ç åæå¿ã第7è¾ä¸çè¯æã
Boost æ»ä½æ¥è¯´æ¯å®ç¨ä»·å¼å¾é«ï¼è´¨éå¾é«çåºã并ä¸ç±äºå
¶å¯¹è·¨å¹³å°ç强è°ï¼å¯¹æ åC++ç强è°ï¼æ¯ç¼åå¹³å°æ å
³ï¼ç°ä»£C++çå¼åè
å¿
å¤çå·¥å
·ãä½æ¯Boost ä¸ä¹æå¾å¤æ¯å®éªæ§è´¨çä¸è¥¿ï¼å¨å®é
çå¼åä¸å®ç¨éè¦è°¨æ
ã并ä¸å¾å¤Boostä¸çåºåè½å ªç§°å¯¹è¯è¨åè½çæ©å±ï¼å
¶æé ç¨å°½ç²¾å·§çææ³ï¼ä¸è¦è´¸ç¶çè±è´¹æ¶é´ç 读ãBoostå¦å¤ä¸é¢ï¼æ¯å¦Graphè¿æ ·çåºåæ¯å
·æå·¥ä¸å¼ºåº¦ï¼ç»æè¯å¥½ï¼é常å¼å¾ç 读çç²¾å代ç ï¼å¹¶ä¸ä¹å¯ä»¥æ¾å¿çå¨äº§å代ç ä¸å¤å¤å©ç¨ã
åèç«ç¹ï¼
http://www.boost.org'>
http://www.boost.orgï¼å½å
éåï¼
http://www.c'>
http://www.c'>
http://www.c'>
http://www.c-view.org/tech/lib/boost/index.htmï¼
GUI
å¨ä¼å¤C++çåºä¸ï¼GUIé¨åçåºç®æ¯æ¯è¾ç¹è£ï¼ä¹æ¯è¾å¼äººæ³¨ç®çãå¨å®é
å¼åä¸ï¼GUIåºçéæ©ä¹æ¯é常éè¦çä¸ä»¶äºæ
ï¼ä¸é¢æ们综述ä¸ä¸å¯éæ©çGUIåºï¼åèªçç¹ç¹ä»¥åç¸å
³å·¥å
·çæ¯æã
1ã MFC
大åé¼é¼ç微软åºç¡ç±»åºï¼Microsoft Foundation Classï¼ã大å¡å¦è¿VC++ç人é½åºè¯¥ç¥éè¿ä¸ªåºãè½ç¶ä»ææ¯è§åº¦è®²ï¼MFCæ¯ä¸å¤§æ¼äº®çï¼ä½æ¯å®æ建äºWindows API ä¹ä¸ï¼è½å¤ä½¿ç¨åºåçå·¥ä½æ´å®¹æ,ç¼ç¨æçé«ï¼åå°äºå¤§éå¨å»ºç« Windows ç¨åºæ¶å¿
é¡»ç¼åç代ç ï¼åæ¶å®è¿æä¾äºææä¸è¬ C++ ç¼ç¨çä¼ç¹ï¼ä¾å¦ç»§æ¿åå°è£
ãMFC ç¼åçç¨åºå¨å个çæ¬çWindowsæä½ç³»ç»ä¸æ¯å¯ç§»æ¤çï¼ä¾å¦ï¼å¨ Windows 3.1ä¸ç¼åç代ç å¯ä»¥å¾å®¹æå°ç§»æ¤å° Windows NT æ Windows 95 ä¸ãä½æ¯å¨æè¿åå±ä»¥åå®æ¹æ¯æä¸æ¥æ¸å¿å¾®ã
2ã QT
åèç½ç«ï¼
http://www.trolltech.com/'>
http://www.trolltech.com/ Qt æ¯Trolltechå
¬å¸çä¸ä¸ªå¤å¹³å°çC++å¾å½¢ç¨æ·çé¢åºç¨ç¨åºæ¡æ¶ãå®æä¾ç»åºç¨ç¨åºå¼åè
建ç«èºæ¯çº§çå¾å½¢ç¨æ·çé¢æéçæç¨åè½ãQtæ¯å®å
¨é¢å对象çå¾å®¹ææ©å±ï¼å¹¶ä¸å
许çæ£å°ç»ä»¶ç¼ç¨ãèªä»1996å¹´æ©äºæ¶åï¼Qtè¿å
¥åä¸é¢åï¼å®å·²ç»æ为å
¨ä¸çèå´å
æ°åç§æåçåºç¨ç¨åºçåºç¡ãQtä¹æ¯æµè¡çLinuxæ¡é¢ç¯å¢KDE çåºç¡ï¼åæ¶å®è¿æ¯æWindowsãMacintoshãUnix/X11çå¤ç§å¹³å°ã
3ãWxWindows
åèç½ç«ï¼
http://www.wxwindows.org/'>
http://www.wxwindows.org/ 跨平å°çGUIåºãå 为å
¶ç±»å±æ¬¡æåMFCï¼æ以ææç« ä»ç»ä»MFCå°WxWindowsç代ç 移æ¤ä»¥å®ç°è·¨å¹³å°çåè½ãéè¿å¤å¹´çå¼åä¹æ¯ä¸ä¸ªæ¥è¶å®åç GUIåºï¼æ¯æåæ ·ä¸å¼±äºåé¢ä¸¤ä¸ªåºã并ä¸æ¯å®å
¨å¼æ¾æºä»£ç çãæ°è¿çC++ Builder XçGUI设计å¨å°±æ¯åºäºè¿ä¸ªåºçã
4ãFox
å¼æ¾æºä»£ç çGUIåºãä½è
ä»èªå·±äº²èº«çå¼åç»éªä¸å¾åºäºä¸ä¸ªçæ³çGUIåºåºè¯¥æ¯ä»ä¹æ ·åçæååºåï¼ä»èå¼å§äºå¯¹è¿ä¸ªåºçå¼åãæå
´è¶£çå¯ä»¥å°è¯ä¸ä¸ã
åèç½ç«ï¼
http://www.fox'>
http://www.fox-toolkit.org/
5ã WTL
åºäºATLçä¸ä¸ªåºãå 为使ç¨äºå¤§éATLçè½»é级ææ³ï¼æ¨¡æ¿çææ¯ï¼å¨ä»£ç 尺寸ï¼ä»¥åé度ä¼åæ¹é¢åå¾é常å°ä½ã主è¦é¢åç使ç¨ç¾¤ä½æ¯å¼åCOMè½»é级ä¾ç½ç»ä¸è½½çå¯è§åæ§ä»¶çå¼åè
ã
6ã GTK
åèç½ç«ï¼
http://gtkmm.sourceforge.net/ GTKæ¯ä¸ä¸ªå¤§åé¼é¼çCçå¼æºGUIåºãå¨Linuxä¸çä¸æGnomeè¿æ ·çææåºç¨ãèGTKå°±æ¯è¿ä¸ªåºçC++å°è£
çæ¬ã
?
åº
ç½ç»éä¿¡
ACE
åèç½ç«ï¼
http://www.c'>
http://www.c'>
http://www.c'>
http://www.cs.wustl.edu/~schmidt/ACE.html
C+ +åºç代表ï¼è¶
éé级çç½ç»éä¿¡å¼åæ¡æ¶ãACEèªéé
éä¿¡ç¯å¢ï¼Adaptive Communication Environmentï¼æ¯å¯ä»¥èªç±ä½¿ç¨ãå¼æ¾æºä»£ç çé¢å对象æ¡æ¶ï¼å¨å
¶ä¸å®ç°äºè®¸å¤ç¨äºå¹¶åé信软件çæ ¸å¿æ¨¡å¼ãACEæä¾äºä¸ç»ä¸°å¯çå¯å¤ç¨C++ å
è£
å¤è§ï¼Wrapper Facadeï¼åæ¡æ¶ç»ä»¶ï¼å¯è·¨è¶å¤ç§å¹³å°å®æéç¨çé信软件任å¡ï¼å
¶ä¸å
æ¬ï¼äºä»¶å¤è·¯å离åäºä»¶å¤çå¨åæ´¾ãä¿¡å·å¤çãæå¡åå§åãè¿ç¨é´éä¿¡ãå
±äº«å
å管çãæ¶æ¯è·¯ç±ãåå¸å¼æå¡å¨æï¼éï¼é
ç½®ã并åæ§è¡ååæ¥ï¼ççã
StreamModule
åèç½ç«ï¼
http://www.omnifarious.org/StrMod/'>
http://www.omnifarious.org/StrMod/ 设计ç¨äºç®åç¼ååå¸å¼ç¨åºçåºãå°è¯ç使å¾ç¼åå¤çå¼æ¥è¡ä¸ºçç¨åºæ´å®¹æï¼èä¸æ¯ç¨åæ¥çå¤å£³å
èµ·å¼æ¥çæ¬è´¨ã
SimpleSocket
åèç½ç«ï¼
http://home.hetnet.nl/~lcbokkers/simsock.htm è¿ä¸ªç±»åºè®©ç¼ååºäºsocketç客æ·/æå¡å¨ç¨åºæ´å 容æã
A Stream Socket API for C++
åèç½ç«ï¼
http://www.pcs.cnu.edu/'>
http://www.pcs.cnu.edu/~dgame/sockets/socketsC++/sockets.html
åä¸ä¸ªå¯¹Socketçå°è£
åºã
XML
Xerces
åèç½ç«ï¼
http://xml.apache.org/xerces-c/ Xerces-C++ æ¯ä¸ä¸ªé常å¥å£®çXML解æå¨ï¼å®æä¾äºéªè¯ï¼ä»¥åSAXåDOM APIãXMLéªè¯å¨æ档类åå®ä¹(Document Type Definitionï¼DTD)æ¹é¢æå¾å¥½çæ¯æï¼å¹¶ä¸å¨2001å¹´12æå¢å äºæ¯æW3C XML Schema çåºæ¬å®æ´çå¼æ¾æ åã
XMLBooster
åèç½ç«ï¼
http://www.xmlbooster.com/'>
http://www.xmlbooster.com/ è¿ä¸ªåºéè¿äº§çç¹å¶çparserçåæ³æ大çæé«äºXML解æçé度ï¼å¹¶ä¸è½å¤äº§çç¸åºçGUIç¨åºæ¥ä¿®æ¹è¿ä¸ªparserãå¨DOMåSAX两大主æµXML解æåæ³ä¹å¤æä¾äºå¦å¤ä¸ä¸ªå¯è¡ç解å³æ¹æ¡ã
Pull Parser
åèç½ç«ï¼
http://www.extreme.indiana.edu/xgws/xsoap/xpp/'>
http://www.extreme.indiana.edu/xgws/xsoap/xpp/ è¿ä¸ªåºéç¨pullæ¹æ³çparserãå¨æ¯ä¸ªSAXçparseråºå±é½æä¸ä¸ªpullçparserï¼è¿ä¸ªxppæè¿å±æ´é²åºæ¥ç´æ¥ç»å¤§å®¶ä½¿ç¨ãå¨è¦å
åèèé度çæ¶åå¼å¾å°è¯ã
Xalan
åèç½ç«ï¼
http://xml.apache.org/xalan-c/ Xalanæ¯ä¸ä¸ªç¨äºæXMLæ档转æ¢ä¸ºHTMLï¼çº¯ææ¬æè
å
¶ä»XMLç±»åææ¡£çXSLTå¤çå¨ã
CMarkup
åèç½ç«ï¼
http://www.firstobject.com/xml.htm'>
http://www.firstobject.com/xml.htm è¿æ¯ä¸ç§ä½¿ç¨EDOMçXML解æå¨ãå¨å¾å¤æè·¯ä¸é¢é常çµæ´»å®ç¨ãå¼å¾å¤§å®¶å¨DOMåSAXä¹å¤å¯»æ±ä¸ç¹çµæã
libxml++
http://libxmlplusplus.sourceforge.net/ libxml++æ¯å¯¹èåçlibxml XML解æå¨çC++å°è£
çæ¬
ç§å¦è®¡ç®
Blitz++
åèç½ç«ï¼
http://www.oonumerics.org/blitz/'>
http://www.oonumerics.org/blitz/ Blitz++ æ¯ä¸ä¸ªé«æççæ°å¼è®¡ç®å½æ°åºï¼å®ç设计ç®çæ¯å¸æ建ç«ä¸å¥æ¢å
·åC++ ä¸æ ·æ¹ä¾¿ï¼åæ¶åæ¯Fortrané度æ´å¿«çæ°å¼è®¡ç®ç¯å¢ãé常ï¼ç¨C++æååºçæ°å¼ç¨åºï¼æ¯ Fortranæ
¢20%å·¦å³ï¼å æ¤Blitz++æ£æ¯è¦æ¹æè¿ä¸ªç¼ºç¹ãæ¹æ³æ¯å©ç¨C++çtemplateææ¯ï¼ç¨åºæ§è¡çè³å¯ä»¥æ¯Fortranæ´å¿«ã Blitz++ç®åä»å¨åå±ä¸ï¼å¯¹äºå¸¸è§çSVDï¼FFTsï¼QMRESç常è§ç线æ§ä»£æ°æ¹æ³å¹¶ä¸æä¾ï¼ä¸è¿ä½¿ç¨è
å¯ä»¥å¾å®¹æå°å©ç¨Blitz++ææä¾çå½æ°æ¥æ建ã
POOMA
åèç½ç«ï¼
http://www.c'>
http://www.c'>
http://www.c'>
http://www.codesourcery.com/pooma/pooma
POOMAæ¯ä¸ä¸ªå
è´¹çé«æ§è½çC++åºï¼ç¨äºå¤ç并è¡å¼ç§å¦è®¡ç®ãPOOMAçé¢å对象设计æ¹ä¾¿äºå¿«éçç¨åºå¼åï¼å¯¹å¹¶è¡æºå¨è¿è¡äºä¼å以达å°æé«çæçï¼æ¹ä¾¿å¨å·¥ä¸åç 究ç¯å¢ä¸ä½¿ç¨ã
MTL
åèç½ç«ï¼
http://www.osl.iu.edu/research/mtl/'>
http://www.osl.iu.edu/research/mtl/ Matrix Template Library(MTL)æ¯ä¸ä¸ªé«æ§è½çæ³åç»ä»¶åºï¼æä¾äºåç§æ ¼å¼ç©éµç大é线æ§ä»£æ°æ¹é¢çåè½ãå¨æäºåºç¨ä½¿ç¨é«æ§è½ç¼è¯å¨çæ
åµä¸ï¼æ¯å¦Intelçç¼è¯å¨ï¼ä»äº§ççæ±ç¼ä»£ç å¯ä»¥çåºå
¶ä¸æåå ä¹æ²¡æä¸¤æ ·çæè½ã
CGAL
åèç½ç«ï¼
www.cgal.org Computational Geometry Algorithms Libraryçç®çæ¯æå¨è®¡ç®å ä½æ¹é¢ç大é¨åéè¦ç解å³æ¹æ¡åæ¹æ³ä»¥C++åºçå½¢å¼æä¾ç»å·¥ä¸åå¦æ¯ççç¨æ·ã
游æå¼å
Audio/Video 3D C++ Programming Library
åèç½ç«ï¼
http://www.galacticasoftware.com/products/av/'>
http://www.galacticasoftware.com/products/av/ AV3Dæ¯ä¸ä¸ªè·¨å¹³å°ï¼é«æ§è½çC++åºã主è¦çç¹æ§æ¯æä¾3Då¾å½¢ï¼å£°ææ¯æï¼SB,以åS3Mï¼ï¼æ§å¶æ¥å£ï¼é®çï¼é¼ æ åé¥æï¼ï¼XMSã
KlayGE
åèç½ç«ï¼
http://home.g365.net/enginedev/ å½å
游æå¼åé«æèªå·±ç¨C++å¼åç游æå¼æãKlayGEæ¯ä¸ä¸ªå¼æ¾æºä»£ç ã跨平å°ç游æå¼æï¼å¹¶ä½¿ç¨Pythonä½èæ¬è¯è¨ãKlayGEå¨LGPLåè®®ä¸åè¡ãæè°¢é¾ææå
ç为ä¸å½æ¸¸æå¼åäºä¸æååºçè´¡ç®ã
OGRE
åèç½ç«ï¼
http://www.ogre3d.org'>
http://www.ogre3d.org OGRE ï¼é¢å对象çå¾å½¢æ¸²æå¼æï¼æ¯ç¨C++å¼åçï¼ä½¿ç¨çµæ´»çé¢å对象3Då¼æãå®çç®çæ¯è®©å¼åè
è½æ´æ¹ä¾¿åç´æ¥å°å¼ååºäº3D硬件设å¤çåºç¨ç¨åºæ游æãå¼æä¸çç±»åºå¯¹æ´åºå±çç³»ç»åºï¼å¦ï¼Direct3DåOpenGLï¼çå
¨é¨ä½¿ç¨ç»èè¿è¡äºæ½è±¡ï¼å¹¶æä¾äºåºäºç°å®ä¸ç对象çæ¥å£åå
¶å®ç±»ã
线ç¨
C++ Threads
åèç½ç«ï¼
http://threads.sourceforge.net/ è¿ä¸ªåºçç®æ æ¯ç»ç¨åºåæä¾æäºä½¿ç¨çç±»ï¼è¿äºç±»è¢«ç»§æ¿ä»¥æä¾å¨Linuxç¯å¢ä¸å¾é¾çå°ç大éç线ç¨æ¹é¢çåè½ã
ZThreads
åèç½ç«ï¼
http://zthread.sourceforge.net/ ä¸ä¸ªå
è¿çé¢å对象ï¼è·¨å¹³å°çC++线ç¨ååæ¥åºã
åºåå
s11n
åèç½ç«ï¼
http://s11n.net/ ä¸ä¸ªåºäºSTLçC++åºï¼ç¨äºåºååPODï¼STL容å¨ä»¥åç¨æ·å®ä¹çç±»åã
Simple XML Persistence Library
åèç½ç«ï¼
http://sxp.sourceforge.net/ è¿æ¯ä¸ä¸ªæ对象åºåå为XMLçè½»é级çC++åºã
å符串
C++ Str Library
åèç½ç«ï¼
http://www.utilitycode.com/str/'>
http://www.utilitycode.com/str/ æä½å符串åå符çåºï¼æ¯æWindowsåæ¯ægccçå¤ç§å¹³å°ãæä¾é«åº¦ä¼åç代ç ï¼å¹¶ä¸æ¯æå¤çº¿ç¨ç¯å¢åUnicodeï¼åæ¶è¿ææ£å表达å¼çæ¯æã
Common Text Transformation Library
åèç½ç«ï¼
http://cttl.sourceforge.net/ è¿æ¯ä¸ä¸ªè§£æåä¿®æ¹STLå符串çåºãCTTL substringç±»å¯ä»¥ç¨æ¥æ¯è¾ï¼æå
¥ï¼æ¿æ¢ä»¥åç¨EBNFçè¯æ³è¿è¡è§£æã
GRETA
åèç½ç«ï¼
http://research.microsoft.com/projects/greta/ è¿æ¯ç±å¾®è½¯ç 究é¢çç 究人åå¼åçå¤çæ£å表达å¼çåºãå¨å°åå¹é
çæ
åµä¸æé常ä¼ç§ç表ç°ã
综å
P::Classes
åèç½ç«ï¼
http://pclasses.com/ ä¸ä¸ªé«åº¦å¯ç§»æ¤çC++åºç¨ç¨åºæ¡æ¶ãå½åå
³æ³¨ç±»åå线ç¨å®å
¨çsignal/slotæºå¶ï¼i/oç³»ç»å
æ¬åºäºæ件çç½ç»åè®®éæçi/oæ¶æï¼åºäºæ件çåºç¨ç¨åºæ¶æ¯æ¥å¿æ¡æ¶ï¼è®¿é®sqlæ°æ®åºçç±»ççã
ACDK - Artefaktur Component Development Kit
åèç½ç«ï¼
http://acdk.sourceforge.net/ è¿æ¯ä¸ä¸ªå¹³å°æ å
³çC++ç»ä»¶æ¡æ¶ï¼ç±»ä¼¼äºJavaæè
.NETä¸çæ¡æ¶ï¼åå°æºå¶ï¼çº¿ç¨ï¼Unicodeï¼åºææ¶éï¼I/Oï¼ç½ç»ï¼å®ç¨å·¥å
·ï¼XMLï¼ççï¼ï¼ä»¥å对Java, Perl, Python, TCL, Lisp, COM å CORBAçéæã
dlib C++ library
åèç½ç«ï¼
http://www.c'>
http://www.c'>
http://www.c'>
http://www.cis.ohio-state.edu/~kingd/dlib/
åç§åæ ·çç±»çä¸ä¸ªç»¼åã大æ´æ°ï¼Socketï¼çº¿ç¨ï¼GUIï¼å®¹å¨ç±»,以åæµè§ç®å½çAPIççã
Chilkat C++ Libraries
åèç½ç«ï¼
http://www.c'>
http://www.c'>
http://www.c'>
http://www.chilkatsoft.com/cpp_libraries.asp
è¿æ¯æä¾zipï¼e-mailï¼ç¼ç ï¼S/MIMEï¼XMLçæ¹é¢çåºã
C++ Portable Types Library (PTypes)
åèç½ç«ï¼
http://www.melikyan.com/ptypes/'>
http://www.melikyan.com/ptypes/ è¿æ¯STLçæ¯è¾ç®åçæ¿ä»£åï¼ä»¥åå¯ç§»æ¤çå¤çº¿ç¨åç½ç»åºã
LFC
åèç½ç«ï¼
http://lfc.sourceforge.net/ å¦ï¼è¿åæ¯ä¸ä¸ªå°è¯æä¾ä¸åçC++åº
å
¶ä»åº
Loki
åèç½ç«ï¼
http://www.moderncppdesign.com/'>http: //
www.moderncppdesign.com/'>
http://www.moderncppdesign.com/'>
http://www.moderncppdesign.com/ å¦ï¼ä½ å¯è½æ±æ¨ææ©è¯¥åBoostä¸èµ·ä»ç»å®ï¼ä¸ä¸ªå®éªæ§è´¨çåºãä½è
å¨lokiä¸æC++模æ¿çåè½åæ¥å°äºæè´ã并ä¸å°è¯æ类似设计模å¼è¿æ ·ææ³å±é¢çä¸è¥¿éè¿åºæ¥æä¾ãåæ¶è¿æä¾äºæºè½æéè¿æ ·æ¯è¾å®ç¨çåè½ã
ATL
ATL(Active Template Library)æ¯ä¸ç»å°å·§ãé«æãçµæ´»çç±»ï¼è¿äºç±»ä¸ºå建å¯äºæä½çCOMç»ä»¶æä¾äºåºæ¬ç设æ½ã
FC++: The Functional C++ Library
è¿ä¸ªåºæä¾äºä¸äºå½æ°å¼è¯è¨ä¸ææçè¦ç´ ãå±äºç¨åºæ¥æ©å
è¯è¨çä¸ä¸ªä»£è¡¨ä½ãå¦ææ³è¦å¨OOPä¹å¤å¯»æ¾å¦ä¸åçä¹è¶£ï¼å¯ä»¥å»ççå½æ°å¼ç¨åºè®¾è®¡çä¸çãå¤§å¸ Peter Norvigå¨ "Teach Yourself Programming in Ten Years"ä¸æä¸å°±å°å½æ°å¼è¯è¨å为è³å°åºå½å¦ä¹ ç6ç±»ç¼ç¨è¯è¨ä¹ä¸ã
FACT!
åèç½ç«ï¼
http://www.kfa'>
http://www.kfa-juelich.de/zam/FACT/start/index.html
å¦å¤ä¸ä¸ªå®ç°å½æ°å¼è¯è¨ç¹æ§çåº
Crypto++
æä¾å¤çå¯ç ï¼æ¶æ¯éªè¯ï¼ååhashï¼å
¬åå å¯ç³»ç»çåè½çå
è´¹åºã
è¿æå¾å¤é常æ¿å¨äººå¿æè
æ¯æå
¶å®ç¨çC++åºï¼éäºæ们ç水平以åæç« çç¯å¹
ä¸è½å
æ¬è¿æ¥ãå¨å¯¹äºè¿äºå·²ç»å
å«è¿æ¥çåºçä»ç»ä¸ï¼ç±äºå¹¶ä¸æ¯æ¯ä¸ä¸ªæ们é½ä½¿ç¨è¿ï¼æ以é¾å
æåé¢ä¹å¤ï¼è¯·è¯»è
è§è°
ã
èµæºç½ç«
æ£å¦æ们å¯ä»¥éè¿è®¡ç®æºåå²ä¸çéè¦äººç©äºè§£è®¡ç®æºå²çåå±ï¼C++ç¸å
³äººç©çç½ç«ä¹å¯ä»¥ä½¿æ们å¾å°ææä»·å¼çåèä¸åé´ï¼ä¸é¢ç人ç©æ们认为没æä»ç»çå¿
è¦ï¼åªå ä¸é¢ç人ç©å¨C++é¢åçå°ä½ä¼æå¨ç¥ï¼æ们åªå°ç¸å
³çèµæºè¿è¡ç½å以ä¾è¯»è
å¦ä¹ ï¼ä»ä»¬æçå·¥ä½äºè´å°å®éªå®¤ï¼æçå·¥ä½äºç¥åç¼è¯å¨ååï¼æçå¨ä¸ææ¨è¿è¯è¨çæ ååï¼æç为读è
æ°åäºå¤é¨åå¤å¥ä½......
Bjarne Stroustrup
http://www.research.att.com/'>
http://www.research.att.com/~bs/
Stanley B. Lippman
http: //blogs.msdn.com/slippman/(ä¸æç
http://www.zengyihome.net'>http: //
www.zengyihome.net/slippman/index.htm'>
http://www.zengyihome.net'>
http://www.zengyihome.net/slippman/index.htm)
Scott Meyers
http://www.aristeia.com/'>
http://www.aristeia.com/ David Musser
http://www.c'>
http://www.c'>
http://www.c'>
http://www.cs.rpi.edu/~musser/
Bruce Eckel
http://www.bruceeckel.com'>
http://www.bruceeckel.com Nicolai M. Josuttis
http://www.josuttis.com/'>
http://www.josuttis.com/ Herb Sutter
http://www.gotw.ca/'>
http://www.gotw.ca/ Andrei Alexandrescu
http://www.moderncppdesign.com/'>
http://www.moderncppdesign.com/'>
http://www.moderncppdesign.com/'>
http://www.moderncppdesign.com/