资源描述:
《Modern C Design》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、ModernC++Design:GenericProgrammingandDesignPatternsAppliedByAndreiAlexandrescuPublisher:AddisonWesleyPubDate:February01,2001ISBN:0-201-70431-5TableofPages:352ContentsModernC++Designisanimportantbook.Fundamentally,itdemonstrates'genericpatterns'or'patterntemplates'asa
2、powerfulnewwayofcreatingextensibledesignsinC++--anewwaytocombinetemplatesandpatternsthatyoumayneverhavedreamtwaspossible,butis.IfyourworkinvolvesC++designandcoding,youshouldreadthisbook.Highlyrecommended.-HerbSutterWhat'slefttosayaboutC++thathasn'talreadybeensaid?Ple
3、nty,itturnsout.-FromtheForewordbyJohnVlissidesInModernC++Design,AndreiAlexandrescuopensnewvistasforC++programmers.Displayingextraordinarycreativityandprogrammingvirtuosity,Alexandrescuoffersacutting-edgeapproachtodesignthatunitesdesignpatterns,genericprogramming,andC
4、++,enablingprogrammerstoachieveexpressive,flexible,andhighlyreusablecode.YThisbookintroducestheconceptofgenericcomponents-reusabledesigntemplatesthatproduceboilerplatecodeforcompilerconsumption-allwithinC++.GenericcomponentsLenableaneasierandmoreseamlesstransitionfro
5、mdesigntoapplicationcode,generateFcodethatbetterexpressestheoriginaldesignintention,andsupportthereuseofdesignstructureswithminimalrecoding.MTheauthordescribesthespecificC++techniquesandfeaturesthatareusedinbuildingAgenericcomponentsandgoesontoimplementindustrialstre
6、ngthgenericcomponentsforEreal-worldapplications.RecurringissuesthatC++developersfaceintheirday-to-dayactivityarediscussedindepthandimplementedinagenericway.Theseinclude:TxPolicy-baseddesignforflexibilityxPartialtemplatespecializationxTypelists-powerfultypemanipula
7、tionstructuresxPatternssuchasVisitor,Singleton,Command,andFactoriesxMulti-methodenginesForeachgenericcomponent,thebookpresentsthefundamentalproblemsanddesignoptions,andfinallyimplementsagenericsolution.Inaddition,anaccompanyingWebsite,http://www.awl.com/cseng/title
8、s/0-201-70431-5,makesthecodeimplementationsavailableforthegenericcomponentsinthebookandprovidesafree,downloadableC++library,calledL