3/12/13
The Definitive C++ Book Guide and List - Stack Overflow
The Definitive C++ Book Guide and List
ThisquestionattemptstocollectthefewpearlsamongthedozensofbadC++booksthatarereleased everyyear. Unlikemanyotherprogramminglanguages,whichareoftenpickeduponthegofromtutorialsfoundon theInternet,fewareabletoquicklypickupC++withoutstudyingagoodC++book.Itiswaytoobigand complexfordoingthis.Infact,itissobigandcomplex,thatthereareverymanyverybadC++books outthere.Andwearenottalkingaboutbadstyle,butthingslikesportingglaringlyobviousfactualerrors andpromotingabysmallybadprogrammingstyles.Andit'sevenworsewithonlinetutorials.(Thereisa reasonnobodybotheredtosetupasimilarquestionforonlinetutorials.) Pleaseprovidequalitybooksandanapproximateskilllevelpreferablyafterdiscussingyouraddition intheC++chatroom.(Theregularsmightmercilesslyundoyourworkiftheydisagreewitha recommendation.)Addashortblurb/descriptionabouteachbookthatyouhavepersonally read/benefitedfrom.Feelfreetodebatequality,headings,etc.Booksthatmeetthecriteriawillbeadded tothelist.BooksthathavereviewsbytheAssociationofCandC++Users(ACCU)havelinkstothe review. Tospellitoutbluntly:Thereisnoneedtoadda75thanswertothisquestion.Ifyoufeellikeabook shouldbeadded,suggestittothecommunityandlet'sdiscussit.
Note:FAQsandotherresourcescanbefoundintheC++taginfoandunder c++faq .Thereisalsoa similarpostforC:TheDefinitiveCBookGuideandList
Reference Style - All Levels
1. TheC++ProgrammingLanguage(BjarneStroustrup)( soontobeupdatedforC++11)Theclassic introductiontoC++byitscreator.WrittentoparalleltheclassicK&R,thisindeedreadsverymuch alikeitandcoversjustabouteverythingfromthecorelanguagetothestandardlibrary,to programmingparadigmstothelanguage'sphilosophy.(Therebymakingthelatesteditionsbreak the1kpagebarrier.)[Review]Thefourthedition(tobereleasedin2013)willcoverC++11. 2. C++StandardLibraryTutorialandReference(NicolaiJosuttis)( updatedforC++11)The introductionandreferencefortheC++StandardLibrary.Thesecondedition(releasedonApril9, 2012)coversC++11.[Review] 3. TheC++IOStreamsandLocales(AngelikaLangerandKlausKreft)There'sverylittletosayabout thisbookexceptthat,ifyouwanttoknowanythingaboutstreamsandlocales,thenthisistheone placetofinddefinitiveanswers.[Review] C++11References: 1. TheC++Standard(INCITS/ISO/IEC148822011) This,ofcourse,isthefinalarbiterofallthatisor isn'tC++.Beaware,however,thatitisintendedpurelyasareferenceforexperienceduserswilling todevoteconsiderabletimeandefforttoitsunderstanding.Asusual,thefirstreleasewasquite expensive($300+US),butithasnowbeenreleasedinelectronicformfor$30USprobablythe leastexpensiveofthereferencebookslistedhere. 2. OverviewoftheNewC++(C++11) ByScottMeyers,who'sahighlyrespectedauthoronC++.Even thoughthelistofitemsisshort,thequalityishigh.
Beginner
Introductory
IfyouarenewtoprogrammingorifyouhaveexperienceinotherlanguagesandarenewtoC++,these booksarehighlyrecommended.
stackoverflow.com/questions/388242/the-definitive-c-book-guide-and-list
1/11
3/12/13
booksarehighlyrecommended.
The Definitive C++ Book Guide and List - Stack Overflow
1. C++Primer (StanleyLippman,JoseLajoie,andBarbaraE.Moo)( updatedforC++11)Comingat 1kpages,thisisaverythoroughintroductionintoC++thatcoversjustabouteverythinginthe languageinaveryaccessibleformatandingreatdetail.Thefifthedition(releasedAugust16, 2012)coversC++11.[Review] 2. AcceleratedC++(AndrewKoenigandBarbaraMoo)Thisbasicallycoversthesamegroundasthe C++Primer ,butdoessoonafourthofitsspace.Thisislargelybecauseitdoesnotattempttobe anintroductiontoprogramming,butanintroductiontoC++forpeoplewho'vepreviously programmedinsomeotherlanguage.Ithasasteeperlearningcurve,but,forthosewhocancope withthis,itisaverycompactintroductionintothelanguage.(Historically,itbrokenewgroundby beingthefirstbeginner'sbookusingamodernapproachatteachingthelanguage.)[Review] 3. ThinkinginC++(BruceEckel)Twovolumessecondismoreaboutstandardlibrary,butstillvery good 4. Programming:PrinciplesandPracticeUsingC++(BjarneStroustrup)Anintroductionto programmingusingC++bythecreatorofthelanguage.Agoodread,thatassumesnoprevious programmingexperience,butisnotonlyforbeginners.
NottobeconfusedwithC++PrimerPlus(StephenPrata),withasignificantlylessfavorablereview.
Best practices
1. EffectiveC++(ScottMeyers)ThiswaswrittenwiththeaimofbeingthebestsecondbookC++ programmersshouldread,anditsucceeded.Earliereditionswereaimedatprogrammerscoming fromC,thethirdeditionchangesthisandtargetsprogrammerscomingfromlanguageslikeJava.It presents~50easytorememberrulesofthumbalongwiththeirrationaleinaveryaccessible(and enjoyable)style.[Review] 2. EffectiveSTL(ScottMeyers)Thisaimstodothesametothepartofthestandardlibrarycoming fromtheSTLwhatEffectiveC++didtothelanguageasawhole:Itpresentsrulesofthumbalong withtheirrationale.[Review]
Intermediate
1. MoreEffectiveC++(ScottMeyers)EvenmorerulesofthumbthanEffectiveC++.Notasimportant astheonesinthefirstbook,butstillgoodtoknow. 2. ExceptionalC++(HerbSutter)Presentedasasetofpuzzles,thishasoneofthebestandthorough discussionsoftheproperresourcemanagementandexceptionsafetyinC++throughResource AcquisitionisInitialization(RAII)inadditiontoindepthcoverageofavarietyofothertopics includingthepimplidiom,namelookup,goodclassdesign,andtheC++memorymodel.[Review] 3. MoreExceptionalC++(HerbSutter)Coversadditionalexceptionsafetytopicsnotcoveredin ExceptionalC++,inadditiontodiscussionofeffectiveobjectorientedprogramminginC++and correctuseoftheSTL.[Review] 4. ExceptionalC++Style(HerbSutter)Discussesgenericprogramming,optimization,andresource managementthisbookalsohasanexcellentexpositionofhowtowritemodularcodeinC++by usingnonmemberfunctionsandthesingleresponsibilityprinciple.[Review] 5. C++CodingStandards(HerbSutterandAndreiAlexandrescu)"Codingstandards"heredoesn't mean"howmanyspacesshouldIindentmycode?"Thisbookcontains101bestpractices,idioms, andcommonpitfallsthatcanhelpyoutowritecorrect,understandable,andefficientC++code. [Review] 6. C++Templates:TheCompleteGuide(DavidVandevoordeandNicolaiM.Josuttis)Thisisthebook aboutC++templates.Itcoverseverythingfromtheverybasicstosomeofthemostadvanced templatemetaprogrammingandexplainseverydetailofhowtemplateswork(bothconceptuallyand athowtheyareimplemented)anddiscussesmanycommonpitfalls.Hasexcellentsummariesofthe OneDefinitionRule(ODR)andoverloadresolutionintheappendices.[Review]
Above Intermediate
1. ModernC++Design(AndreiAlexandrescu)Agroundbreakingbookonadvancedgeneric programmingtechniques.Introducespolicybaseddesign,typelists,andfundamentalgeneric programmingidiomsthenexplainshowmanyusefuldesignpatterns(includingsmallobject
stackoverflow.com/questions/388242/the-definitive-c-book-guide-and-list
2/11
3/12/13
The Definitive C++ Book Guide and List - Stack Overflow
programmingidiomsthenexplainshowmanyusefuldesignpatterns(includingsmallobject allocators,functors,factories,visitors,andmultimethods)canbeimplementedefficiently,modularly, andcleanlyusinggenericprogramming.[Review] 2. C++TemplateMetaprogramming(DavidAbrahamsandAlekseyGurtovoy) 3. C++ConcurrencyInAction(AnthonyWilliams)AbookcoveringC++11concurrencysupport includingthethreadlibrary,theatomicslibrary,theC++memorymodel,locksandmutexes,aswell asissuesofdesigninganddebuggingmultithreadedapplications. 4. AdvancedC++Metaprogramming(DavideDiGennaro)ApreC++11manualofTMPtechniques, focusedmoreonpracticethantheory.Thereareatonofsnippetsinthisbook,someofwhichare madeobsoletebytypetraits,butthetechniques,arenonetheless,usefultoknow.Ifyoucanputup withthequirkyformatting/editing,itiseasiertoreadthanAlexandrescu,andarguably,more rewarding.Formoreexperienceddevelopers,thereisagoodchancethatyoumaypickup somethingaboutadarkcornerofC++(aquirk)thatusuallyonlycomesaboutthroughextensive experience.
Classics / Older
Note: Someinformationcontainedwithinthesebooksmaynotbeuptodateornolongerconsidered bestpractice. 1. TheDesignandEvolutionofC++(BjarneStroustrup)Ifyouwanttoknowwhythelanguageisthe wayitis,thisbookiswhereyoufindanswers.Thiscoverseverythingbeforethestandardizationof C++. 2. RuminationsonC++(AndrewKoenigandBarbaraMoo)[Review] 3. AdvancedC++ProgrammingStylesandIdioms(JamesCoplien)Apredecessorofthepattern movement,itdescribesmanyC++specific"idioms".It'scertainlyaverygoodbookandstillwortha readifyoucansparethetime,butquiteoldandnotuptodatewithcurrentC++. 4. LargeScaleC++SoftwareDesign(JohnLakos)LakosexplainstechniquestomanageverybigC++ softwareprojects.Certainlyagoodread,ifitonlywasuptodate.ItwaswrittenlongbeforeC++98, andmissesonmanyfeatures(e.g.namespaces)importantforlargescaleprojects.Ifyouneedto workinabigC++softwareproject,youmightwanttoreadit,althoughyouneedtotakemorethan agrainofsaltwithit.There'sbeentherumorthatLakosiswritinganuptodateeditionofthebook foryears. 5. InsidetheC++ObjectModel(StanleyLippman)Ifyouwanttoknowhowvirtualmemberfunctions arecommonlyimplementedandhowbaseobjectsarecommonlylaidoutinmemoryinamulti inheritancescenario,andhowallthisaffectsperformance,thisiswhereyouwillfindthorough discussionsofsuchtopics. Thisquestionhashistoricalsignificance,butisnotagoodexampleofanappropriatequestion.Read andlearnfromthispost,butpleasedonotuseitasevidencethatyoucanasksimilarquestions. SeetheFAQformoreinfo.
c++ books c++faq
editedMar8at7:53
communitywiki 64revs,28users35% sbi
97 TinyURLforthisquestion:tinyurl.com/socxxbookssbiFeb4'11at17:47 97 Tothemisguidedindividualswhokeepclosingthisquestionrandomly: Pleaseleavethisquestionopen. It
hasbeendiscussedonmetamultipletimesandtheverdictwasthat,despitethisquestionnotfullyadhering tocurrentmoderationguidelines,itdoesmoregoodthanharm.Alsokeepinmindthatthereare literally! thousandsoflinkstothisquestionallacrosstheInternet.sbiAug21'12at12:55
42 Answers
1 2 next
stackoverflow.com/questions/388242/the-definitive-c-book-guide-and-list
3/11
3/12/13
The Definitive C++ Book Guide and List - Stack Overflow
AboutC++TemplatesTheCompleteGuide Icanonlysaygoodthingsaboutit.Writtenbytwotopexperts.Andyoureallynoticethat.Theexamples arewellwritten,explainedandplaced. Theystartbyteachingyouthebasicsonafewpages.Thentheytalkaboutallthepitfallsandhidden dangerthereisintemplateprogrammingandthecoolstuffthatcanbedonewiththem.Attheend,they explainindetailtheoverloadresolutionandtheonedefinitionruleinAppendixAandB. Stronglyrecommended:)
editedJun24'12at20:22 communitywiki 2revs,2users92% JohannesSchaublitb
69 ThiswasthebookthatopenedmyeyesandmademerealisehowmuchIhatedC++Brent.Longborough
Jan4'09at11:54
93 @Brent.Longborough:Why?Becausenobodyisenforcedtowritelibrarycodeortemplatedcodeingeneral?
Itisabitlikesaying A m a n u a l o n r e f l e c t i o n s o p e n e d m y e y e s a n d m a d e m e r e a l i s e h o w m u c h I h a t e d C #.Orlikehatredonyourcarbecausethere'samanualfortheengine,tobeusedby engineers.Seriously,nobodyisenforcedtowritesuchcode.Butforthosewhowant,e.g.library implementors/programmersthisguideisindeedacompleteone. Itisforthosewhocopewithtemplates, soprogrammerslikeyoudon'thaveto.phresnelJun15'11at9:54
Ienjoythepartwherehediscussesfuturetrends.Itisfuntoseehowjustaboutallofthesewererealizedin C++11.Itseemsthatthemoreunlikelynamesforthefeatureswerechosen.emsrJun21'12at19:23
show 1morecomment
I'daddC++FAQstotheBeginnerlist.Ifindithighlyreadable,enjoyable,andasuccinctsummaryofa lotofmaterialin"TheC++ProgrammingLanguage"andthe"EffectiveC++"seriesofbooks.
answeredDec23'08at5:59 communitywiki Nocturne
LargeScaleC++Design,byJohnLakos I'dsayintermediatelevel.Inanycase.readitbeforeyoustart/joinyourveryfirstlargeproject (whicheverlevelyou'reat).
editedSep28'12at10:27 communitywiki 3revs,3users56% Pieter
Ifindthebooktooverboseandthereforedifficulttomaintainfocus.Iwouldbettergoforthenotesatmpi inf.mpg.de/~kettner/courses/lib_design_03/notes/large.htmlphaedrusApr10'09at8:05 for"dependencyheirarchy."butthisis2010.LSC++Diswayyyyoutdated.Writteninanerawhenevena modestC++programcouldtake810hourstocompileandlink.95%oftheissuesaddressedareobsolete.I havereadthedraftsforthesecondbookafewyearsago.Basicallythemanuscriptwasfocussedonwhy everychangetoC++inthepast15yearsisharmful.Namespaces,exceptions,templates,theSTL,noneof thesepassmuster.HopefullytheMShasimprovedsincethen.LanceDiduckApr26'10at16:42
22 Ireadthebookbackin1999,andfounditagoodreadbackthen.Itisworthreadingnowtogetagoodfeel
6 5
IagreewithLanceDiduck,it'sobsolete.Aninterestingreadthough,butwithacriticalmind.NikkoMay22 '10at15:05 Thedependencyheirarchypartisstill highlyrelevant.Wemightnotneed810hourstocompileanymore,but therearestillatonofprojectsthatcouldbenefitfromcompilinginoneminuteinsteadof15minutesormore. quequeJun15'12at18:04
show 1morecomment
stackoverflow.com/questions/388242/the-definitive-c-book-guide-and-list
4/11
3/12/13
The Definitive C++ Book Guide and List - Stack Overflow
IthinkBruceEckel'sThinkinginC++volumesreallystirredme. http://www.mindview.net/Books/TICPP/ThinkingInCPP2e.html
answeredDec23'08at8:19 communitywiki Kezzer
4 TheyaregreatasintroductorybooksandforthediscussionsaboutOOP.Butbewarethattheycan'tbeused
asareferenceguidetheytradedthatofftobeofthe"tutorial"type(well,agreattutorialanyway). BlaisorbladeJan14'09at23:51
8 HandsdownthebestC++tutorials...allotherpaleincomparison.biasMar26'09at22:49
show 2morecomments
NewbookbyStroustrupPrinciplesandPracticeUsingC++shouldbeagreatbeginnerbook.
answeredDec23'08at6:11 communitywiki Jay
5 ItisaverygoodbookandveryimpressivethatcoversalotoffieldsNikkoMay10'10at15:03 4 Readingtheauthor'spdfpaperonthebookonteachingexperiencesincollegeitseemslikehewantsto
ensurethathisbaby(C++)isintroducedintherightwaytonewcomerstoC++.Thankstohimformakingthe efforttosetthingsstraight.GuruMFeb17'12at6:27 show 1morecomment
C++CommonKnowledgebyStephenDewhurstbelongsintheIntermediatesection,butjustbarely.The coverageoftemplatesgetsintoadvancedmaterialneartheend.
answeredDec24'08at15:42 communitywiki StephenW.Carson
1 Ireallylikethisbook,howeverforaverylongtimeIthoughtthatthereweretopicsthatIjustdidn'tknow
about.Itturnedoutthatthecommonknowledgeisn'tsocommonevenamongveryseasonc++programmer. Yes,mostofthetopicsareknownorshouldbeknown,butthereareatleastfewthatareeitherverysparsely usedornoonebotherstolearnthem.Onceagain,Ilovethisbooksodon'tgetmewrong.I'mjuststating reality.ra170Jan31'11at0:12 show 1morecomment
Mostofwhatisimportantisalreadythere: IwouldaddImperfectC++PracticalSolutionsforRealLifeProgrammingByMatthewWilson Itisintermediatelevel,Iguess,andhasarefreshingapproachtoit(reallife,iswhathesaid).
editedAug23'12at5:35 communitywiki 5revs,5users70% MartinMittendorfer
show 1morecomment
Idon'tknowwhatit'sworth,butthere'sabookavailableonStanford'sCS106BProgramming AbstractionswebsiteinPDFformat.Thesiteishere: http://www.stanford.edu/class/cs106b/ Youcandownloadthebookbyclickingthe"CourseReaderPDF"linktotheright.Thebookiscalled: ProgrammingAbstractionsinC++ EricRoberts&JulieZelenski YoumayalsoreferCS106Laftercompletingcs106b
stackoverflow.com/questions/388242/the-definitive-c-book-guide-and-list
5/11
3/12/13
editedJun13'12at14:19
The Definitive C++ Book Guide and List - Stack Overflow
communitywiki 2revs JDelage
Iwouldliketorecommend"InsidetheC++ObjectModel"byStanleyLippman.ItexplainswellhowC++ objectworksunderthehood.KnowingthesedetailsisamusttobeagoodC++programmer.
answeredFeb15'09at17:11 communitywiki PatrickTsai
Forthe'classics'sectionI'dliketorecommend,JohnLakos"LargeScaleC++SoftwareDesign".It's quiteanoldbookbutitoccupiesanichethatnootherC++bookIknowofcovers.Probably Intermediate,andifyou'reworkingonabigcodebase,you'llhavetohavethisbook. I'dalsoliketorecommendStephenC.Dewhurst's"C++Gotchas"fortheIntermediatedeveloper.Itfalls intothesamecategoryasHerbSutter'sExceptionalC++books,onlywithslightlymoreemphasisonhow toavoidshootingyourselfinthefoot.
answeredDec23'08at7:09 communitywiki TimoGeusch
show 1morecomment
Whataboutthisbook? EssentialC++ byStanleyB.Lippman ItisstructuredinafewchaptersbyC++programmingparadigms: Chapter1.BasicC++Programming Chapter2.ProceduralProgramming Chapter3.GenericProgrammingChapter Chapter4.ObjectBasedProgramming Chapter5.ObjectOrientedProgramming Chapter6.ProgrammingwithTemplates Chapter7.ExceptionHandling AppendixA.ExerciseSolutions AppendixB.GenericAlgorithmsHandbook Alsoeverychapterhasabunchofexercises.
answeredFeb3'11at20:06 communitywiki Hoornet
7 Ihavereadit.Itis,essentially,Lippman's C++Primerboileddowntoathirdofitsvolume.Anditfeelsthat
way.Lippmanknowswhathe'swritingabout,andthebookwillcontainnoseriouserrors,butit'snotwrittenas a250pageintroduction.Nevertheless,weC++folksshouldbegladwheneverthere'sabookouttherethathas allthefactsright,andthiscertainlyissuchabook.So,yes,a recommendationfromme,butwithsome reservation.sbiFeb3'11at21:17 show 1morecomment
STLlinksathttp://www.stepanovpapers.comespeciallyhttp://www.stepanovpapers.com/Stepanov The_Standard_Template_Library1994.pdfandhttp://www.stepanovpapers.com/STL/DOC.PDF
stackoverflow.com/questions/388242/the-definitive-c-book-guide-and-list
6/11
3/12/13
editedNov2'12at12:14
The Definitive C++ Book Guide and List - Stack Overflow
communitywiki 2revs,2users67% Ram
5 Iamnotsurehowanalmost20yearsoldtextontheSTLasitwasbeforeitgotincorporatedintothestdlib
(aprocessbywhichitwaschangedalot)isstillrelevantfortoday.Justtheothernight,afterbrowsingthrough itforanhourwithaglassofwineinmyhand,IdecidedthatitistimetofinallythrowawaytheprintoutIstill hadofit.sbiApr15'12at7:50
Ifyouareanintermediatelevelprogrammer,likefreshoutofcollege,usedC++forsmallkiddish programsbutnowstartedworkingonC++projects,thefirstfewchaptersoftheCS106Bcourseof Stanfordisamustread.Itrefreshesyourmemoryandneatlymovesontotheadvancedconcepts. Amazingexplanationsandbeautifulexamples.
answeredFeb17'11at10:48 communitywiki jackrobotics
9 Iassumeyoumeanthepubliccontentavailablehere:stanford.edu/class/cs106bTonyFeb17'11at13:51
show 2morecomments
TheAnnotatedC++ReferenceManualbyMargaretEllisandBjarneStroustrupshouldbelistedunder classics.Itisstillverywellregardedalmost20yearslater,thoughsomewhatdated.
answeredMar19'09at19:57 communitywiki DaveMooney
show 1morecomment
TheBoostC++Libraries,writtenbyBorisSchling,andtranslatedtoEnglishbyAndreasMasurprovides anintroductiontotheBoostlibraries.ThefirsteditionisavailableonlineunderaCreativeCommons licenseandcoversBoost1.42.0.There'sanewereditionthatcoversBoost1.47.0(butthisoneisnot availableforfree). ThebookfocusonBoostandonlyBoost.ItassumessomeC++knowledge,butnottoomuch,soIthink it'sagoodbookforthefledglingC++studentthatafterobtainingagraspofthelanguagewantstouse Boost. Thebookcoversthemostcommonlyusedlibraries,anddescribeseachcomponentwithexamplesand enoughdetailtogetyoustartedusingeachofthem.Obviously,giventhesheersizeofBoost,itcan'tgo intoexcruciatingdetailovereverything,sothisismoreofanintroductorybookthanafullreference. Nevertheless,thebookisstillusefulforBoostveteransthatwanttogetstartedquicklywithsomepartof Boostthatthey'renotfamiliarwithyet.
answeredDec5'11at17:40 communitywiki R.MartinhoFernandes
Ifwhatyou'relookingforisafairlycompletereference,IlikeC++inaNutshell.Ihavefoundittobemore completeandmoretothepointthan"TheC++ProgrammingLanguage"(whichIguessisthepointofthe Nutshellseries).However,itisdefinitelynotforthebeginner.
answeredDec23'08at23:40 communitywiki zdan
show 1morecomment
ForGermanreaders,IcanrecommendthebookbyProf.UlrichBreymann"DerC++Programmierer", HanserVerlag,2009.It's950pagescoverallpossibleaspectsofC++fromHelloWorldtoSTL,smart pointers,threadprogramming,overridingofoperatornew,etc.Itbenefitsgreatlybybeingaveryrecent
stackoverflow.com/questions/388242/the-definitive-c-book-guide-and-list
7/11
3/12/13
The Definitive C++ Book Guide and List - Stack Overflow
book(andastandardtextforGermaninformaticians),soistargetedtotheC++0xstandardsyntax.Itis alsoabeautifullyproducedbook,whichmakesforapleasuretoread. IhavecoachedandconsultedinC++inrecentyearsandthisismyconstantcompanionandalwaysmy firstrecommendation.
editedAug23'12at5:43 communitywiki 3revs,2users73% PaulBuller
show 2morecomments
APIDesignforC++byMartinReddy.GoodreadafterMeyers'EffectiveC++andandJosuttis'sTheC++ StandardLibrary:ATutorialandReference.
answeredJul24'11at14:19 communitywiki pic11
show 1morecomment
Inspiteofbeingstatedbeforehand,itisfertiletoreiterateStephenDewhurst'stwobooks: C++Gotchas:AvoidingCommonProblemsinCodingandDesign C++CommonKnowledge:EssentialIntermediateProgramming andDannyKalev'sconstantlyupdatedebook: C++ReferenceGuide Lastly,don'tyouthinkyoushouldaddinthatlistHerbSutter'sotherbookaswellandthebestBoost introductorybookthatexists?
editedAug23'12at5:34 communitywiki 3revs,2users90% Comptrol
IgotC++Cookbookasabirthdaypresentandlikeitagooddeal.It'saverypracticalbook,withcode examples("recipes")tosolvespecificproblems.Eachrecipeisexplainedindetailbybreakingthecode downandshowingwhythingshavebeendoneacertainway.Manyrecipesshowyouhowtodothings usingSTLand/orBoost,andsometimeshowtorollyourown.
answeredFeb18'09at20:23 communitywiki ScottieT
show 1morecomment
Ithink,whilenotprimarilytargettingC++,theGOF'sDesignPatternsElementsofReusableObject OrientedSoftwarebyGamma,Helm,Johnson,Vlissidesshouldhaveaplacehere,sinceitteaches basicsofsolidsoftwaredesign,mostlyusingC++forcodeexamples,thusgivinggoodinsightintowhat todowithC++.
editedAug20'11at8:15 communitywiki karx11erx
3 Thisisstillaprettydecentbook,IMO,despiteit'sageandallthepatternhatethathasreplacethepattern
obsessioninthe90s,butIdon'tthinkitshouldbeincludedinaC++booklist.sbiApr15'12at7:41
DataStructuresinC++usingSTL ThiswasatextbookforadatastructuresclassItookandoneofthefewthatIconsideredgoodenough nottosellbackattheendofthesemester.
stackoverflow.com/questions/388242/the-definitive-c-book-guide-and-list
8/11
3/12/13
answeredDec25'08at19:11
The Definitive C++ Book Guide and List - Stack Overflow
communitywiki
show 2morecomments
IpersonallyreallylikedProfessionalC++asanintermediateormaybeadvancedbook.Ithasagreat introwithoutgoingtoobasic,greatcoverageofpointers,STL,evenframeworkstouseforcertain scenarios.
answeredMar5'09at22:58 communitywiki Simara
1 Thisbooksucked,icouldntreaditafterfirst3chapters.vehomzzzOct15'09at17:59
TheC++StandardLibraryExtensions:ATutorialandReferencebyPeteBecker
answeredAug7'11at12:25 communitywiki plan9assembler
1 ThislistslibrariesthatarenowpartoftheC++librarysince2003.Nomatterwhetherit'sgood(Ibelieveitis),
it'sseriouslyoutdated.sbiApr15'12at7:15 show 2morecomments
TheC++languagereferenceatMSDN.Itisaprettygoodstuff: MSDNC++languageReference
editedAug23'12at5:39 communitywiki 2revs,2users67% crazy_prog
8 IwouldstayawayfromtheMSspecificimplementationofC++,knowntobenonstandard.Besides,that
"languagereference"isn'tsowellwritten.MSdidquiteafewgoodthings(likeC#),C++development environmentisn'toneofthemanymore.RedGlyphAug6'12at18:08 show 2morecomments
IthinkC++ineasystepsisoneofthebest,andmostconcisewaystolearnC++.It'sonlyabout15 bucksUSD,andittaughtmeeverythingIknowinabout150pages.Anintroductiontoprogrammingis present,butIguessit'sallpersonalchoicewhenitcomestobooksalthoughsomearemorewidely recognizedthanothers.
answeredOct31'11at22:51 communitywiki MarcDiMillo
1 ThethinnestC++bookIhaveeverreadis AcceleratedC++byKoenig/Moo.Itcomesat250pages,and
despitethefactthatithasalearningcurvethat'salmostunsurmountableforlotsofstudentsandskipsover manypartsofC++,it'sstillanexcellentbeginner'sbook.However,Iveryseriouslydoubtonecouldremove 40%ofit'scontentandstillhaveadecentbookcoveringevenonlythemostimportantpartsofthelanguage. IfthistaughtyoueverythingyouknowaboutC++,thenIsuggestyoupickupotherbooks(there'salistofgood C++bookssomewhereonSO)andlearnmore.sbiApr15'12at7:08 show 5morecomments
Beginning C++ Through Game Programming
stackoverflow.com/questions/388242/the-definitive-c-book-guide-and-list
9/11
3/12/13
byMichaelDawson
The Definitive C++ Book Guide and List - Stack Overflow
Level: Beginner > Introductory
Thisbookiswrittenforthebeginner,andassumesnopreviousprogrammingexperience.
Perspective: Game Programming
ThisbookapproacheslearningC++fromagamedevelopmentperspective.
Example:
Inthisbook,insteadofthetraditional"HelloWorld!"program,itteachesthefollowing"GameOver!" version: / / G a m e O v e r / / A f i r s t C p r o g r a m # i n c l u d e < i o s t r e a m > i n t m a i n ( ) { s t d : : c o u t < < " G a m e O v e r ! " < < s t d : : e n d l r e t u r n 0 }
answeredApr24'12at4:22 communitywiki JamesDidzun
1 Ilovedthisbook!kunj2aanJun14'12at3:12
Intermediate: ElementsofProgramming Thisshort(butdense)bookhasaremarkablemixofabstractalgebra(e.g.chaptertwoisdedicatedto "AssociativeOperations")withtheconcretealgorithmicimplementationsinrelativelyshortC++code snippets(abstractedviatemplates,ofcourse).
answeredApr26'12at1:28 communitywiki pnkfelix
ForselftaughtknowledgeofcomputersandC++,IwasreallyfondofNeilGreyABeginnersC++ especiallysincetheentirethingisavailableforfreeasaseriesofPDF's(here)whichmakeslifeso mucheasierwhenyouwanttocopypastecodeforexercisesortemplates. Whenlearningaboutasubject,IliketheWikipediastyleversion.Therearen'talotoflongwinded introductions,anecdotesandtangents.Thesemakefornicenovels,orintroductorybooksforpeople whoaren'treallythatinterestedinthesubjectbutifyouwanttogetdowntobrasstaxanddensefacts, thisisagreatreference. Oneoftheuniquelyusefulpartsaboutthisbookishowishasacolumnrunningdownthesideofevery pagecontainingkeywordsreferencedinthatsectioninadditiontotheusualsectionheadersand runningpageheadersthattellyouwhereyou'reat.Thesectionsareorganizedinwhatis,tome,the mostlogicalapproachacrashcourseoncomputerhardware,followedbymachinelanguage,andthen higherlevellanguage,algorithms,designparadigms,OOP,etc.Italsogiveswellannotatedexamplesof codefrompracticalapplications,suchasairtrafficcontrolsoftwareanddoesagoodjobofunderlying therealworldimportanceofbestpracticeprincipleslikeinformationexperts,modularity,and documentation. It'ssurvivedsolongforbeingmostlyIDEagnostic,butIwishsomeonewouldgobackandtakeoutall thoseembarrassinglyoutdatedreferencestoBorland.
stackoverflow.com/questions/388242/the-definitive-c-book-guide-and-list
10/11
3/12/13
editedMay21'12at17:29
The Definitive C++ Book Guide and List - Stack Overflow
communitywiki 2revs,2users94% Alain
ForbeginnersandnonnativeEnglishspeakers,thebookLetUsC++isveryuseful. ThisauthorhaswrittenabookcalledLetUsCwhichisalsopopularandreferredbymanyIndian students.
editedAug23'12at5:45 communitywiki 2revs,2users77% DineshP.R.
4 StayawayfromKanetkar'sbooksifyou'reseriousaboutlearningC++/Cprogramming!CuriousOct4'12at
18:54
3 @Fake.It.Til.U.Make.ItIwoulddefinitelynotcopystufffromotherstowriteabook!CuriousOct25'12at
7:14 show 1morecomment
1 2 next
protected by Robert Harvey Apr 16 '12 at 17:10
Thisquestionisprotectedtoprevent"thanks!","metoo!",orspamanswersbynewusers.Toanswerit,youmust haveearnedatleast10reputationonthissite.
Not the answer you're looking for? Browse other questions tagged c++ books c++-faq or ask your own question.
stackoverflow.com/questions/388242/the-definitive-c-book-guide-and-list
11/11