이펙티브 C++

이펙티브 C++

$30.79
저자

스콧마이어스

지은이:스콧마이어스(ScottMeyers)
C++에관한세계최고전문가중한명이다.인기있는강사이자자문가,콘퍼런스강연자인그의EffectiveC++시리즈(EffectiveC++,MoreEffectiveC++,EffectiveSTL)는20년이상C++프로그래밍지침의기준을확립했다.그는BrownUniversity에서컴퓨터과학Ph.D.학위를받았다.그의웹사이트는aristeia.com이다.  

옮긴이:곽용재
2004년에고려대학교컴퓨터학과에서전산학박사학위를받고현재네이버의검색시스템센터에서검색서비스개발및관련검색플랫폼개발을책임지고있다.최근대규모서비스플랫폼에대한다차원적인관리체계를구축하는데에많은시간을쏟고있다.1997년부터컴퓨터프로그래밍서적번역가및기술저술가로활동해왔다.
  

목차

옮긴이머리말
머리말
감수자의글
베타리더의글
작업원칙및용어대역
독자여러분반갑습니다

Chapter1C++에왔으면C++의법을따릅시다
항목1:C++를언어들의연합체로바라보는안목은필수
항목2:#define을쓰려거든const,enum,inline을떠올리자
항목3:낌새만보이면const를들이대보자!
항목4:객체를사용하기전에반드시그객체를초기화하자

Chapter2생성자,소멸자및대입연산자
항목5:C++가은근슬쩍만들어호출해버리는함수들에촉각을세우자
항목6:컴파일러가만들어낸함수가필요없으면확실히이들의사용을금해버리자
항목7:다형성을가진기본클래스에서는소멸자를반드시가상소멸자로선언하자
항목8:예외가소멸자를떠나지못하도록붙들어놓자
항목9:객체생성및소멸과정중에는절대로가상함수를호출하지말자
항목10:대입연산자는*this의참조자를반환하게하자
항목11:operator=에서는자기대입에대한처리가빠지지않도록하자
항목12:객체의모든부분을빠짐없이복사하자

Chapter3자원관리
항목13:자원관리에는객체가그만!
항목14:자원관리클래스의복사동작에대해진지하게고찰하자
항목15:자원관리클래스에서관리되는자원은외부에서접근할수있도록하자
항목16:new및delete를사용할때는형태를반드시맞추자
항목17:new로생성한객체를스마트포인터에저장하는코드는별도의한문장으로만들자

Chapter4설계및선언
항목18:인터페이스설계는제대로쓰기엔쉽게,엉터리로쓰기엔어렵게하자
항목19:클래스설계는타입설계와똑같이취급하자
항목20:'값에의한전달'보다는'상수객체참조자에의한전달'방식을택하는편이대개낫다
항목21:함수에서객체를반환해야할경우에참조자를반환하려고들지말자
항목22:데이터멤버가선언될곳은private영역임을명심하자
항목23:멤버함수보다는비멤버비프렌드함수와더가까워지자
항목24:타입변환이모든매개변수에대해적용되어야한다면비멤버함수를선언하자
항목25:예외를던지지않는swap에대한지원도생각해보자

Chapter5구현
항목26:변수정의는늦출수있는데까지늦추는근성을발휘하자
항목27:캐스팅은절약,또절약!잊지말자
항목28:내부에서사용하는객체에대한"핸들"을반환하는코드는되도록피하자
항목29:예외안전성이확보되는그날위해싸우고또싸우자!
항목30:인라인함수는미주알고주알따져서이해해두자
항목31:파일사이의컴파일의존성을최대로줄이자

Chapter6상속,그리고객체지향설계
항목32:public상속모형은반드시"is-a(...는...의일종이다)"를따르도록만들자
항목33:상속된이름을숨기는일은피하자
항목34:인터페이스상속과구현상속의차이를제대로파악하고구별하자
항목35:가상함수대신쓸것들도생각해두는자세를시시때때로길러두자
항목36:상속받은비가상함수를파생클래스에서재정의하는것은절대금물!
항목37:어떤함수에대해서도상속받은기본매개변수값은절대로재정의하지말자
항목38:"has-a(...는...를가짐)"혹은"is-implemented-in-terms-of(...는...를써서구현됨)"를모형화할때는객체합성을사용하자
항목39:private상속은심사숙고해서구사하자
항목40:다중상속은심사숙고해서사용하자

Chapter7템플릿과일반화프로그래밍
항목41:템플릿프로그래밍의천릿길도암시적인터페이스와컴파일타임다형성부터
항목42:typename의두가지의미를제대로파악하자
항목43:템플릿으로만들어진기본클래스안의이름에접근하는방법을알아두자
항목44:매개변수에독립적인코드는템플릿으로부터분리시키자
항목45:"호환되는모든타입"을받아들이는데는멤버함수템플릿이직방!
항목46:타입변환이바람직할경우에는비멤버함수를클래스템플릿안에정의해두자
항목47:타입에대한정보가필요하다면특성정보클래스를사용하자
항목48:템플릿메타프로그래밍,하지않겠는가?

Chapter8new와delete를내맘대로
항목49:new처리자의동작원리를제대로이해하자
항목50:new및delete를언제바꿔야좋은소리를들을지를파악해두자
항목51:new및delete를작성할때따라야할기존의관례를잘알아두자
항목52:위치지정new를작성한다면위치지정delete도같이준비하자

Chapter9그밖의이야기들
항목53:컴파일러경고를지나치지말자
항목54:TR1을포함한표준라이브러리구성요소와편안한친구가되자
항목55:Boo子有親!부스트를늘여러분가까이에

부록A'EffectiveC++'이후의이야기들
부록B2판및3판의항목대응표

찾아보기