More Programmings/Effective C++

const가 붙으면 외부에서 이 코드를 분가능하게 하여 값이 불변하게 한다. char greeting[] = "Hello"; char *p = greeting; //비상수 포인터, 비상수 데이터 const char *p = greeting; //비상수 포인터, 상수 데이터 char * const p = greeting; //상수 데이터, 비상구 데이터 const char * const p = greeting; //상수 포인터, 상수 데이터 void f1(const widget *pw); //f1은 상수 widget 객체에 대한 포인터를 매개 변수로 취함 void f2(Widget const *pw); // f1과 같은 방식으로 매개변수로 취함 std::vector vec; const std::vector..
선행 처리자보다 컴파일러를 더 가까이 하자#define ASPECT_RATIO 1.653컴파일러가 기호식 이름을 밀어버리고 선행처리자가 숫자 상수로 바꾸어 버림#define을 사용하지 않고 상수로 교체할 때에는 const를 두번 붙이는 경우가 발생할 수 있음매크로 대신에 상수를 사용하여 형변환 에러를 해결어떤 상수의 범위를 클래스로 한정하고자 할 때는 그 상수를 멤버로 만들어야 한다. static 변수 class GamePlayer { private: static const int NumTurns = 5; //상수 선언 int scores[NumTurns]; //상수를 사용하는 부분 }; 헤더 파일에는 클래스 상수의 정의를 두지 않는다. 클래스 상술ㄹ #define으로 정의하지 날 것 class Cost..
초창기의 c++은 단순히 c 언어에 객체 지햐 기능 몇 가지가 결합된 형태오늘날의 c++은 다중패러다임 프로그래밍 언어로 절차적 프로그래밍을 기본으로 하여 객체 지향, 함수식, 일반화 프로그래밍을 포함하며 메타프로그래밍 개념까지 지원.c : c++은 c를 기본으로 하고 있음, 블록, 문장, 선행 처리자, 기본제공 데이터타입, 배열, 포인터 등의 개념 모두 활용객체 지향 개념의 c++ : 클래스, 캡슐화, 상속, 다형성, 가상함수 등 사용템플릿 c++ : c++의 일반화 트로그래밍, 새로운 프로그래밍 패러다임이 파생stl : 템플릿 라이브러리, 컨테이너, 반복자, 알고리즘, 함수 객체 등 포함 결국 C++은 하위 언어들의 연합체
Effective C++ : C++을 효과적으로 사용하기 위한 방법항목(item) : 프로그램과 설계를 더욱 쓸 만하게 뽑을 수 있는 방법선언(declaration) : 코드에 사용되는 '어떤 대상'의 이름과 타이블 컴파일러에게 알려 주는 것Signature : 함수의 매개변수 리스트와 반환 타입정의(definaition) : 선언에서 빠진 구체적인 세부사항을 컴파일러에게 제공하는 것초기화(initialization) : 어떤 객체에 최초의 값을 부여하는 과정default constructor : 어떤 인자도 주어지지 않은 채로 호출될 수 있는 생성자explicit 생성자의 경우 암시적 타입 형 변환을 막는다.copy constructor : 어떤 객체의 초기화를 위해 그와 같은 타입의 객체로부터 초기화..
플로쨔응
'More Programmings/Effective C++' 카테고리의 글 목록 (2 Page)