logo
logo
x
바코드검색
BOOKPRICE.co.kr
책, 도서 가격비교 사이트
바코드검색

인기 검색어

실시간 검색어

검색가능 서점

도서목록 제공

두렵지 않은 C++

두렵지 않은 C++

(영리하게 코딩하고 싶은 C++ 초급 개발자를 위한 가이드)

브라이언 오버랜드 (지은이), 한정애 (옮긴이)
  |  
에이콘출판
2013-02-27
  |  
40,000원

일반도서

검색중
서점 할인가 할인률 배송비 혜택/추가 실질최저가 구매하기
yes24 로딩중
교보문고 로딩중
영풍문고 로딩중
인터파크 로딩중
11st 로딩중
G마켓 로딩중
쿠팡 로딩중
쿠팡로켓 로딩중
notice_icon 검색 결과 내에 다른 책이 포함되어 있을 수 있습니다.

중고도서

검색중
로딩중

e-Book

검색중
서점 정가 할인가 마일리지 실질최저가 구매하기
로딩중

책 이미지

두렵지 않은 C++

책 정보

· 제목 : 두렵지 않은 C++ (영리하게 코딩하고 싶은 C++ 초급 개발자를 위한 가이드)
· 분류 : 국내도서 > 컴퓨터/모바일 > 프로그래밍 언어 > C++
· ISBN : 9788960774025
· 쪽수 : 620쪽

책 소개

쉽고 재미있는 데다 실용적이기까지 한 예제를 중심으로 C++의 기본을 충실히 설명하는 책. C++ 초보자를 대상으로 가장 기본적인 제어 구조, 함수 및 파일 접근에서부터 시작해 다형성에 이르기까지 방대한 C++의 기능을 잘 풀어 썼다.

목차

1장 첫 번째 C++ 프로그램
___프로그래머처럼 생각하기
______컴퓨터는 시키는 대로만 한다
______프로그램에게 무엇을 시킬지 결정하기
______동등한 C++ 명령문 작성
______칼럼: 컴퓨터는 정말 얼마나 '똑똑'한가, 진짜?
______몇 가지 바보 같은 정의 - 리뷰
___C++는 무엇이 다른가?
___C++ 프로그램 작성
______프로그램 명령문 입력
______프로그램 빌드(컴파일과 링크)
______프로그램 테스트
______필요한 만큼 수정
___자신만의 C++ 컴파일러 설치
______예제 1.1 메시지 출력
______Dev-C++ 환경을 사용할 경우
______마이크로소프트 사의 비주얼 스튜디오를 사용할 경우
______동작 방법
______연습문제
______칼럼: #include와 using이 무엇인가?
___다음 출력 행으로 줄 바꿈
______예제 1.2 여러 줄 출력
______동작 방법
______연습문제
______칼럼: 문자열이란 무엇인가?
___데이터 저장하기: C++ 변수
___데이터형 소개
______칼럼: 왜 한 배가 아니라 두 배인가?
______예제 1.3 기온 변환
______동작 방법
______프로그램 최적화
______연습문제
___변수 이름과 키워드에 관한 몇 가지
______연습문제
___정리

2장 결정, 결정
___데이터형에 대한 몇 가지 더
___프로그램에서의 결정
______칼럼: 인공 지능(AI, artificial interlligence)이란 무엇인가?
______if와 if-else
______칼럼: 왜 두 연산자(= 와 ==)를 사용하는가?
______예제 2.1 홀수 혹은 짝수?
______동작 방법
______코드 최적화
______연습문제
___루프 소개
______칼럼: 무한 루프
______예제 2.2 1에서부터 N까지 출력
______동작 방법
______프로그램 최적화
______연습문제
___C++에서 참 혹은 거짓
______칼럼: 불리언 데이터형
___증가 연산자(++)
___명령문과 표현식
___불리언(지름길) 논리 소개
______칼럼: 무엇이 '참'인가?
______예제 2.3 나이 검사
______동작 방법
______연습문제
___수학 라이브러리 소개
______예제 2.4 소수 검사
______동작 방법
______프로그램 최적화
______연습문제
______예제 2.5 빼기 게임(NIM)
______동작 방법
______연습문제
___정리

3장 간편한 다용도 'for' 명령문
___카운트를 위한 루프
___'for' 루프 소개
___수많은 예제
______칼럼: 'for'는 항상 'while'처럼 동작하는가?
______예제 3.1 'for'를 사용해 1에서부터 N까지 출력
______동작 방법
______연습문제
___for에서 복합 명령문(블록) 사용
___즉석에서 루프 변수 선언
______예제 3.2 'for'를 사용한 소수 검사
______동작 방법
______연습문제
___비교 언어 101: 베이직의 'For'명령문
___정리

4장 함수: 많은 것을 호출
___함수의 개념
___함수 사용의 기본
______단계 1: 함수 선언(프로토타입)
______단계 2: 함수 정의
______단계 3: 함수 호출
______예제 4.1 avg() 함수
______동작 방법
______함수가 함수를 호출!
______연습문제
______예제 4.2 소수 함수
______동작 방법
______연습문제
___지역 변수와 전역 변수
______칼럼: 왜 전역 변수를 사용할까?
___재귀 함수
______예제 4.3 인수 분해
______동작 방법
______칼럼: 수학쟁이를 위한 칼럼
______연습문제
______예제 4.4 최대 공약수를 구하는 유클리드의 알고리즘
______동작 방법
______칼럼: 유클리드가 누구지?
______연습문제
______칼럼: 수학쟁이를 위한 칼럼: 증명의 나머지 부분
______예제 4.5 아름다운 재귀, 하노이의 탑
______동작 방법
______연습문제
______예제 4.6 난수 생성기
______동작 방법
______연습문제
___게임과 추가 게임
___정리

5장 배열: 모두 한 줄에
___C++ 배열 들여다보기
___배열 초기화
___0으로 시작하는 인덱스
______칼럼: 왜 0으로 시작하는 인덱스를 쓰는가?
______예제 5.1 요소 출력
______동작 방법
______연습문제
______예제 5.2 난수는 얼마나 무작위일까?
______동작 방법
______연습문제
___문자열과 문자열의 배열
______예제 5.3 첫 번째 카드 돌리기
______동작 방법
______연습문제
______두 번째 카드 돌리기
______동작 방법
______연습문제
______예제 5.5 세 번째 카드 돌리기
______동작 방법
______프로그램 최적화
______연습문제
___지혜로운 한마디
___2차원 배열: 행렬로 한 걸음
___정리

6장 포인터: 데이터를 처리할 손잡이
___포인터가 뭔데?
___포인터의 개념
______칼럼: 주소는 어떻게 생겼는가?
___포인터 선언과 사용
______예제 6.1 주소 출력
______예제 6.2 double_it 함수
______동작 방법
______연습문제
___교환: 포인터를 사용하는 또 다른 함수
______예제 6.3 배열 정렬
______동작 방법
______연습문제
___포인터 연산
___포인터와 배열 처리
______예제 6.3 배열을 0으로 초기화
______동작 방법
______좀 더 간결한 코드 작성
______연습문제
___정리

7장 문자열: 텍스트 분석
___컴퓨터 내의 텍스트 저장소
______칼럼: 컴퓨터는 프로그램을 어떻게 번역하는가?
___문자열이 없다면 아무 뜻도 없다
___문자열 조작 함수
______예제 7.1 문자열 생성
______동작 방법
______연습문제
______칼럼: 이스케이프 문자열이란 무엇인가?
___문자열 입력 읽기
______예제 7.2 숫자 얻기
______동작 방법
______연습문제
______예제 7.3 대문자로 변환
______동작 방법
______연습문제
___개별 문자와 문자열
______예제 7.4 strtok으로 입력 값 자르기
______동작 방법
______연습문제
___새로운 C++ 문자열 데이터형
______String 클래스 지원 포함
______string으로 변수 선언과 초기화
______string형 변수로 작업
______입력과 출력
______예제 7.5 string형을 사용해 문자열 생성
______동작 방법
______연습문제
___string 클래스가 지원하는 기타 연산
___정리

8장 파일: 전자적 저장소
___파일 스트림 객체 소개
___디스크 파일을 참조하는 방법
______예제 8.1 파일에 글쓰기
______동작 방법
______연습문제
______예제 8.2 텍스트 파일 출력
______동작 방법
______연습문제
___텍스트 파일과 바이너리 파일
______칼럼: '바이너리 파일'들은 진짜로 바이너리일까?
___바이너리 연산 소개
______예제 8.3 무작위 접근 쓰기
______동작 방법
______연습문제
______예제 8.4 무작위 접근 읽기
______동작 방법
______연습문제
___정리

9장 고급 프로그래밍 기술
___커맨드라인 인자
______예제 9.1 커맨드라인에서 입력받은 파일 출력
______동작 방법
______프로그램 개선
______칼럼: 미리 정의된 상수의 아름다움
______연습문제
___함수 오버로딩
______칼럼: 오버로딩과 객체지향
______예제 9.2 다른 데이터형을 갖는 배열 출력
______동작 방법
______연습문제
___do-while 루프
___switch-case 명령문
___다중 모듈
___예외 처리: 예외가 있습니다!
______예외의 기초
______예외 처리: 첫 번째 시도
______try-catch 예외 처리 소개
___정리

10장 C++11의 새로운 기능
___C++11 기능의 개요
___long long형(long long long은 아님)
______칼럼: 왜 '자연' 정수인가?
______64비트 리터럴(상수) 사용
______long long형으로 입력받기
______long long 숫자 보기 좋게 출력
______예제 10.1 피보나치: 64비트 예제
______동작 방법
______연습문제
______숫자 현지화
______칼럼: 피보나치가 누굴까?
___범위 기반 'for'
______예제 10.2 범위 기반 'for'로 배열 초기화
______동작 방법
______연습문제
___auto와 decltype 키워드
___nullptr 키워드
___강한 데이터형 열거형
______C++11에서 enum 클래스
______확장된 열거형 문법: 저장소 제어
______예제 10.3 가위 바위 보 게임
______동작 방법
______더 재미있는 게임
______연습문제
___원 문자열 리터럴
___정리

11장 클래스 소개: 분수 클래스
___객체지향: 유사 지능 데이터형
______칼럼: OOP…… 그만한 가치가 있나요?
___Point: 간단한 클래스
______칼럼: C 프로그래머를 위한 칼럼: 구조체와 클래스
___private: 멤버들만 접근 가능(데이터 보호)
______예제 11.1 Point 클래스 검사
______동작 방법
______연습문제
___Fraction 클래스 소개
___인라인 함수
___최대공약수 찾기
___최소공배수 찾기
______예제 11.2 분수를 지원하는 함수
______동작 방법
______연습문제
______예제 11.3 Fraction 클래스 검사
______동작 방법
______칼럼: 새로운 #include 방식?
______연습문제
______예제 11.4 분수 연산: 뎃셈과 곱셈
______동작 방법
______연습문제
___정리

12장 생성자: 그걸 만든다면……
___생성자 소개
___다중 생성자(오버로딩)
___C++11만 지원: 클래스 내에서 멤버 초기화
___기본 생성자: 그리고 경고
______칼럼: C++가 기본 생성자를 가지고 놀리는 거 아냐?
___C++11만 지원: 생성자 파견? 위임?
___C++11만 지원: 일관된 초기화
______예제 12.1 Point 클래스 생성자
______동작 방법
______연습문제
______예제 12.2 분수 클래스 생성자
______동작 방법
______연습문제
___참조 변수와 인자(&)
___복사 생성자
______칼럼: 복사 생성자와 참조자
______예제 12.3 분수 클래스 복사 생성자
______동작 방법
______연습문제
___문자열에서 분수로 바꾸는 생성자
___정리

13장 연산자 함수: 클래스 활용
___클래스 연산자 함수 소개
___전역 함수로서의 연산자 함수
___참조자로 효율 높이기
______예제 13.1 포인트 클래스 연산자
______동작 방법
______연습문제
______예제 13.2 분수 클래스 연산자
______동작 방법
______코드 최적화
______연습문제
___기타 데이터형과 함께 사용
___클래스 할당 함수(=)
___같은지 비교 함수(==)
___클래스 '출력' 함수
______예제 13.3 최종 분수 클래스
______동작 방법
______연습문제
___C++11만 지원: 사용자 정의 리터럴
______원 문자열 리터럴 정의
______준비된 리터럴 정의
___정리

14장 동적 메모리와 문자열 클래스
___동적 메모리: 'new' 키워드
___객체와 'new'
___여러 데이터 할당
______칼럼: 메모리 할당과 관련된 문제 해결하기
______예제 14.1 동적 메모리 사용
______동작 방법
______연습문제
___클래스 소멸자
______예제 14.2 간단한 문자열 클래스
______동작 방법
______연습문제
___'깊은' 복사와 복사 생성자
___this 키워드
___할당 연산자 다시 보기
___결합 함수 작성
______예제 14.3 최종 문자열 클래스
______동작 방법
______연습문제
___정리

15장 완전한 OOP 예제 두 개
___연결 리스트 소개
______노드 설계
______간단한 연결 리스트 구현
______알파벳 순서 리스트
______예제 15.1 이름을 알파벳 순서로 정렬
______동작 방법
______메모리 누수 처리
______C++11만 지원: 삭제를 위해 스마트 포인터 사용
______칼럼: 재귀 호출과 반복 비교
______연습문제
___하노이의 탑, 애니메이션 추가
______mystack 클래스 설계
______mystack 클래스 사용
______예제 15.2 움직이는 타워
______동작 방법
______연습문제
___정리

16장 STL을 사용한 손쉬운 프로그래밍
___리스트 템플릿 소개
______칼럼: C++에서 템플릿 작성하기
______리스트 클래스 생성과 사용
______반복자 작성과 사용
______C++11만 지원: for each
______칼럼: 포인터와 반복자
______예제 16.1 STL 정렬된 리스트
______동작 방법
______지속적으로 정렬돼 있는 리스트
______연습문제
___RPN 계산기 설계
______칼럼: 폴란드식 표기법에 대한 간단한 역사 이야기
______RPN을 위해 스택 사용
______일반화된 STL 스택 클래스 소개
______예제 16.2 역폴란드 계산기
______동작 방법
______연습문제
___꺾쇠의 올바른 해석
___정리

17장 상속: 물려받은 것들
___하위 클래스를 만드는 방법
______칼럼: 왜 '공용(public)' 기본 클래스인가?
______예제 17.1 FloatFraction 클래스
______동작 방법
______연습문제
___FloatFraction 클래스에서의 문제
___C++11만 지원: 기본 클래스 생성자 상속
______예제 17.2 완전한 FloatFraction 클래스
______동작 방법
______연습문제
___보호받는 멤버
___객체 포함
___클래스 계층 구조를 통한 안전한 상속
___정리

18장 다형성: 객체 독립성
___FloatFraction 클래스에 대한 다른 접근 방법
___우리를 구원해줄 가상 함수!
______칼럼: 가상 함수를 쓰는 비용은?
______예제 18.1 수정된 FloatFraction 클래스
______동작 방법
______연습문제
___C++11만 지원: 명시적 오버라이딩 요구
___'순수 가상'과 기타 추상화 관련 사항
___추상 클래스와 인터페이스
___객체지향과 I/O
______끝없이 확장 가능한 cout
______다형적이지 않은 cout
______예제 18.2 진짜 다형성: Printable 클래스
______동작 방법
______연습문제
___마지막 한마디(혹은 두 마디)
___진짜 마지막 한마디
___정리

부록 A 연산자
___영역(::) 연산자
___sizeof 연산자
___데이터형을 변환하는 오래된 방법과 새로운 방법
___정수형과 부동소수점 나눗셈
___비트 단위 연산자(&, /, ^,~, <<, >>)
___조건 연산자
___할당 연산자
___연결(,) 연산자

부록 B 데이터형
___데이터형의 정밀도
___숫자 리터럴의 데이터형
___문자열 리터럴과 이스케이프 문자열
___부호가 있는 정수를 위한 2의 보수 표기법

부록 C 문법 요약
___기본 표현식 문법
___기본 명령문 문법
___제어 구조와 분기(branch) 명령문
___if-else 명령문
___while 명령문
___do-while 명령문
___for 명령문
___switch-case 명령문
___break 명령문
___continue 명령문
___goto 명령문
___return 명령문
___throw 명령문
___변수 선언
___함수 선언
___클래스 선언
___열거형 선언

부록 D 전처리 지시어
___#define 지시어
___## 연산자(결합)
___defined 함수
___#elif 지시어
___#endif 지시어
___#error 지시어
___#if 지시어
___#ifdef 지시어
___#ifndef 지시어
___#include 지시어
___#line 지시어
___#undef 지시어
___미리 정의된 상수

부록 E ASCII 코드

부록 F 표준 라이브러리 함수
___문자열(C 문자열) 함수
___데이터 변환 함수
___단일 문자 함수
___수학 함수
___난수 관련 함수
___시간 관련 함수
___strftime 함수를 위한 형식

부록 G I/O 스트림 객체와 클래스
___콘솔 스트림 객체
___I/O 스트림 조작기
___입력 스트림 함수
___출력 스트림 함수
___파일 I/O 함수

부록 H STL 클래스와 객체
___STL 문자열 클래스
___<list> 템플릿
___<stack> 템플릿

부록 I 용어집

저자소개

브라이언 오버랜드 (지은이)    정보 더보기
20대부터 전문 프로그래머로 일하기 시작했고, 컴퓨터 과학과 영어, 수학 선생님으로도 일했다. 새로운 언어를 배우는 것을 즐기며 게임, 퍼즐, 시뮬레이션이나 수학 문제를 프로그래밍하는 것만큼, 다른 사람에게 새로 배운 언어를 설명하는 능력도 탁월하다. 12권이 넘는 프로그래밍 도서를 집필한 저자이기도 하다. 마이크로소프트에서 10년 동안 소프트웨어 테스터, 프로그래머/저자, 매니저로 근무했으며, 그의 가장 큰 성과는 비주얼 베이직 1.0의 리드 저자이자 전체 문서화 프로젝트 리더로 활동할 때 얻었다. 이 프로젝트는 마이크로소프트 윈도 개발을 하는 사람들에게 길잡이 역할을 하여 세상을 바꾸는 데 이바지했으며, 프로젝트의 성공 비결은 윈도 개발 가이드 문서가 재미있고 쉽다는 것을 보여 주었기 때문이라고 생각한다.
펼치기
한정애 (옮긴이)    정보 더보기
서울대학교 컴퓨터공학과를 졸업하고 동 대학원에서 박사학위를 받았다. 글로벌 소프트웨어 회사인 SAP에서 개발하다 현재는 삼성증권에서 일하고 있다. 리눅스와 C++ 프로그래밍을 비롯한 여러 가지 프로그래밍 관련 분야에 관심이 많다. 번역서로는 에이콘출판사에서 출간한 『두렵지 않은 C++』(2013), 『C++ 표준 라이브러리』(2013), 『Boost C++ 애플리케이션 개발』(2015), 『Boost.Asio C++ 네트워크 프로그래밍 쿡북』(2017), 『텐서플로1.x로 배우는 머신 러닝』(2018)이 있다.
펼치기

추천도서

이 포스팅은 쿠팡 파트너스 활동의 일환으로,
이에 따른 일정액의 수수료를 제공받습니다.
도서 DB 제공 : 알라딘 서점(www.aladin.co.kr)
최근 본 책