목록개발 공부/Principles And Practice Using C++ (21)
음악, 삶, 개발
21.1 Standard library algorithms standard library 는 80가지의 algorithm 을 제공한다. 이중 가장 많이 쓰이는 일부를 소개한다. standard library 인 algorithm 을 사용할려면 아래와 같이 추가하도록 한다. #include 이 algorithm 들은 1개 혹은 1개 이상의 sequence 를 받는다. input sequence 는 2개의 iterator 로 정의되며, output sequence 는 첫번째 element 를 나타내는 iterator 에 의해 정의된다. algorithm 은 일반적으로 함수로 표현된다. algorithm 은 보통 intput sequence 에서 실패한 것 (failure) 을 input sequence 의 ..
Write programs that do one thing and do it well. Write programs to work together - Doug McIlroy 20.1 Storing and processing data C 프로그래머 Jack 과 C++ 프로그래머 Jill 이 있다. 이 둘은 자동차의 속력를 float 으로 재보기로했다. Jack 은 array 에, Jill 은 vector 에 각각 값을 저장하기로했다. 이 둘은 코드를 작성했다. double* get_from_jack(int* count); vector* get_from_jill(); void fct() { int jack_count = 0; double* jack_data = get_from_jack(&jack_count);..
Intro 이 chapter 에서는 아래의 사항들을 배울것이다. vector (STL container) element 의 갯수가 바뀌는 container 를 구현하는 방법 element type 을 container 의 parameter 로 사용하는 방법 range error 를 대체하는 법 design template exception resource management 19.1 The problems 우리는 chapter 18 에서 아래의 사항들을 배웠다. 우리가 원하는 element 갯수만큼 vector 만들기. 대입 (assignment) 과 초기화 (initialization) 를 통해 vector 를 copy 하기. scope 를 사용하여 vector 가 사용하는 memory 를 releas..
lee : 이 chapter는 굉장히 중요한데, 간략하게 읽어보니 설명이 너무 어렵다. 앞 chapter 에서 사용했던 예제 코드로 계속 설명을 이어나가서, 오히려 이해가 안 되는 부분이 너무 많다. 그래서 (생략) 이 많을듯하다. 의미가 없어서가 아니라, 다른 책을 통해 배워야할거같다. 일단 요약할 수 있는 데까지는 요약해보겠음. 추후 목차에 적힌 제목들을 구글링 하자. 이 챕터에서는 아래의 것들을 배운다. vector 가 subscripting을 통해 어떻게 copy 되는지. array와 vector의 관계 pointer와 array의 사용을 통해 나타나는 문제점 모든 type에서 필요한 5가지 필수적인 연산 : construction, default construction, copy construc..
17.1 Introduction 가장 많이 쓰이는 C++ 의 container 는 vector 이다. vector 에 대해 간략히 정리하면 아래와 같다. 주어진 type 의 element 로 sequence 를 만들수있다. index 로 element 에 접근할수있다. push_back() 함수로 element 를 추가하여 vector 를 확장할수있다. size() 함수로 element 의 숫자를 알수있다. type-safe container 이다. C++ 에서는 또다른 container 인 string, list, map 등이 있다. (20. 에서 다룸) 하지만, 컴퓨터 메모리는 우리가 사용하는 이런 type 들을 support 하지앟는다. (다르게 말하면 컴퓨터 메모리는 type 이 뭔지 모른다) 컴..
16.1 User interface alternatives 16.2 The "Next" button 16.3 A simple window 16.3.1 A callback function 16.3.2 A wait loop 16.3.3 A lamda expression as a callback 16.4 Button and other Widgets 16.4.1 Widgets 16.4.2 Buttons 16.4.3 In box and Out box 16.4.4 Menus 16.5 An example 16.6 Control inversion 16.7 Adding a menu 16.8 Debugging GUI code 16.1 User interface alternatives 프로그래머로써 User I..
생략.
interface 디자인의 아이디어와, inheritance (상속) 의 개념을 설명한다. 또한 class derivation (클래스 파생), virtual function (가상 함수), access control 을 다룬다. 14.1 Design principles 14.1.1 Types 14.1.2 Operations 14.1.3 Naming 14.1.4 Mutability (가변성) 14.2 Shape 14.2.1 An abstract class 14.2.2 Access control 14.2.3 Drawing shapes 14.2.4 Copying and mutability 14.3 Base and derived classes 14.3.1 Object layout 14.3.2 De..
생략.