도서안내

기계 공학도를 위한 최소한의 C++
저자
이창섭, 고윤호, 유원선
정가
24,000 원
판수
초판
쪽수
394쪽
인쇄도수
1도
판형 / 장정
188*257 / 무선
ISBN
979-11-85224-80-0 93550
도서 소개

본서는 수학, 물리 등 이공계 과목에 익숙한 독자가 훨씬 빨리 이해하고, 공학 강의시간에 제시된 문제해결을 위해 C++ 언어를 손쉽게 적용할 수 있는 교재를 만드는 것, 그러면서도 꼭 필요한 내용만으로 제한한다는 기준을 가지고 편찬되었다. 우리는 꼭 필요하다고 생각되는 최소한의 언어만을 본서에 담고, 더 필요한 전문적인 C++ 언어 지식은 시중의 전문적인 서적을 참고하는 것이 최초로 C++ 언어를 배우는 데에 훨씬 도움이 된다고 판단하고 있다. 

 

실제로 공과대학 교수인 필자는 지난 25년 이상을 C와 C++를 교육과 연구의 도구로 사용하였지만, 여기에 기술된 이상의 고급 기능이 많이 필요하지 않았다는 경험을 갖고 있다. 본서를 “공학도를 위한 최소한의 C++” 라고 제목을 정한 이유가 여기에 있다. 강의시간에 C++ 프로그래밍의 실습에 활용할 수 있도록 프로젝트절을 일부 장의 뒤에 첨부하였으며, C++ 언어의 이해에 도움이 되도록 연습문제를 관련된 장에 함께 정리하여 놓았다. 모쪼록 이 작은 책자를 통하여 공학문제 해결에 수치적 기법을 적용할 수 있는 기초 능력이 배양되길 바란다.

목 차

제1장 시작하며

1.1 최초의 C++ 프로그램 소개

1.2 C++ 컴파일러의 역할

1.3 Visual C++ 2010 사용법

1.4 프로젝트


제2장 변수와 상수

2.1 변수와 저장공간 크기

2.2 변수의 정의

2.3 쉼표 연산자

2.4 cast 형변환

2.5 typedef

2.6 상수

2.7 나열형 상수

2.8 블럭 및 범위

2.9 주소 연산자 및 간접지정 연산자

2.10 참조자

2.11 프로젝트

2.11.1 형변환

2.11.2 문제가 발생되는 형변환

2.12 연습문제

 

제3장 문장과 수식

3.1 문장

3.2 수식

3.3 수식 연산자

3.4 복합 연산자

3.5 증가/감소 연산자

3.6 전치/후치 연산자

3.7 연산의 우선순위

3.8 프로젝트

3.8.1 나누기 연산자

3.9 연습문제

 

제4장 흐름 제어

4.1 관계 연산자

4.2 논리 연산자

4.3 분기문

4.3.1 if 문

4.3.2 if else 문

4.3.3 switch 문

4.4 반복문

4.4.1 while 문

4.4.2 continue 와 break

4.4.3 do while 문

4.4.4 for 문

4.4.5 goto 문

4.5 조건 연산자

4.6 들여쓰기와 주석문

4.7 프로젝트

4.7.1 수열의 합

4.7.2 난수 발생 후 이를 추정하는 게임

4.7.3 switch 문과 무한 loop 문

4.8 연습문제

 

제5장 함수

5.1 서언

5.2 함수의 정의 및 호출

5.3 함수 원형

5.4 함수내 계산결과 반환

5.5 기본값 매개변수

5.6 함수의 중첩

5.7 inline 함수

5.8 자기호출

5.9 프로젝트

5.9.1 원의 면적과 둘레

5.9.2 복소수 사칙 연산 함수

5.9.3 참조자 호출 예제

5.10 연습문제

 

제6장 포인터 및 배열

6.1 포인터

6.2 널 포인터와 와일드 포인터

6.3 메모리 영역분류

6.4 new와 delete

6.5 고정된 크기의 1차원 배열

6.6 동적 크기의 1차원 배열

6.7 고정된 크기의 다차원 배열

6.8 동적 크기의 다차원 배열

6.9 const 포인터

6.10 포인터 연산 및 메모리 복사

6.11 벡터 및 메이트릭스 연산

6.11.1 벡터

6.11.2 메이트릭스

6.11.3 효과적인 메이트릭스 정의방법

6.12 포인터를 이용한 함수 매개변수 값 반환

6.12.1 1차원 포인터 매개변수

6.12.2 2-차원 포인터 매개변수

6.13 프로젝트

6.13.1 최대값 구하기

6.13.2 평균, 표준편차 계산

6.14 연습문제

 

제7장 클래스

7.1 클래스의 정의

7.2 객체의 정의

7.3 감싸기와 숨기기

7.4 최초의 클래스포함 프로그램

7.5 개선된 클래스 정의 형식

7.6 클래스 함수내 계산결과 참조자 이용 반환

7.7 클래스 객체 배열 및 포인터 사용

7.8 생성자와 소멸자

7.9 const 멤버 함수

7.10 this 포인터

7.11 프로젝트

7.11.1 성적 처리를 위한 class

7.11.2 성적 처리를 위한 class 보완

7.12 연습문제

 

제8장 클래스의 고급 함수

8.1 복소수 클래스 만들기

8.2 friend 함수

8.3 연산자 중첩

8.4 프로젝트

8.4.1 DFT 구현

8.4.2 Complex class를 이용하지 않는 DFT 구현

 

제9장 상속

9.1 상속의 개념과 구현

9.2 멤버 구역주소의 상속 특성

9.2.1 public과 private 구역주소

9.2.2 protected 구역주소

9.3 함수의 재정의

9.4 가상함수

9.4.1 정적 결합

9.4.2 동적 결합

9.5 순수가상함수와 추상클래스

 

제10장 네임스페이스

10.1 네임스페이스의 개념과 구현

10.2 using 선언

10.3 표준 네임스페이스 std

 

제11장 스트링

11.1 문자열

11.2 string 클래스

11.3 연습문제

 

제12장 입력과 출력

12.1 키보드와 모니터 입출력

12.2 파일 입출력

12.3 고급 파일 입출력

12.4 실제 파일 입출력 예

12.5 프로젝트

12.5.1 형식지정 입출력 1

12.5.2 형식지정 입출력 2

 

제13장 템플릿

13.1 함수 템플릿

13.2 클래스 템플릿

 

제14장 STL

14.1 컨테이너

14.2 반복자

14.3 알고리즘

14.4 vector를 사용한 배열 표현 예

14.5 연습문제

 

부록 A 예약어와 연산우선순위

부록 B 배열 연습 코드

B.1 삼각형, 사각형의 면적

B.2 1-차원 배열로 삼각형 꼭지점 좌표 표현

B.3 2-차원 배열로 삼각형 꼭지점 좌표 표현

B.4 3-차원 공간의 사각형 꼭지점 표현

B.5 메쉬로 3-차원 표면 표현

B.6 포인터로 배열 선언

B.7 패널에 의한 표면 표현법

B.8 패널의 기하학적 특성 계산

B.8.1 중심 계산

B.8.2 법선벡터 계산

부록 C 클래스 설계, 제작 및 사용

C.1 유틸리티 루틴

C.2 Matrix 클래스 코딩

C.3 Matrix 클래스 드라이버

C.4 클래스 사용의 잇점