장바구니 담기 close

장바구니에 상품을 담았습니다.

C++ Programming

C++ Programming

  • 황기태
  • |
  • 생능출판사
  • |
  • 2013-07-26 출간
  • |
  • 671페이지
  • |
  • 210 X 297 X 35 mm
  • |
  • ISBN 9788970507835
판매가

29,000원

즉시할인가

28,710

카드할인

0원(즉시할인 0%)

적립금

290원 적립(1%적립)

배송비

2,500원

(제주/도서산간 배송 추가비용:3,000원)

추가혜택

네이버페이 무조건 1%적립+ 추가 1%적립

수량
+ -
총주문금액
28,710

이 상품은 품절된 상품입니다

※ 스프링제본 상품은 반품/교환/환불이 불가능하므로 신중하게 선택하여 주시기 바랍니다.

출판사서평

눈과 직관만으로도 누구나 쉽게 이해할 수 있는 명품 C++ 강좌

이 책은 비트교육센터 초대 센터장으로서 독창적인 실전 프로젝트 아이디어로 수많은 IT 전문가를 배출하였으며, 2013년 현재 수많은 대학의 자바 강좌에서 쓰이는 《명품 JAVA Programming》의 저자인 황기태 교수가 20여 년에 걸친 프로그래밍 언어 개발 경험과 강의 경험을 모두 쏟아부어 만든 책이다.
‘비트 교육의 신화’를 창조한 저자답게 이 책은 C++ 언어의 프로그래밍 기술을 스토리를 엮듯이 쉽게 풀어내어 C언어를 처음 접하는 이들도 개념을 쉽게 이해할 수 있도록 하고 있다. 더욱이 내용을 쉽게 이해하도록 그림과 삽화를 다양하게 구성하고 있으며, 소스 코드가 한눈에 들어오도록 해당 소스 코드에 주석을 달아 소스 코드에 대한 설명과 결과가 한눈에 들어오도록 하고 있다. 말 그대로 눈과 직관만으로도 이해할 수 있는 이 세상에 단 하나밖에 없는 프로그래밍 언어 책이다.

소프트웨어 전문가가 되기 위한 C++ 언어의 충실한 이해서

C++는 시스템 소프트웨어, 응용 소프트웨어, 게임, 디바이스 드라이버, 임베디드 소프트웨어, 모바일 프로그램 등 소프트웨어의 전 분야에 활용되고 있다. 또한 C++는 운영체제, 하드웨어, 응용 분야를 가리지 않고, 다른 객체 지향 언어인 Java나 C#에 비해 실행 속도가 빠르며, 메모리나 I/O 포트를 직접 접근하므로 하드웨어 제어에 강점을 가진다.
이처럼 C++는 광범위하면서도 파괴력 있는 프로그래밍 언어이고, Java나 C# 등 현대적 객체 지향 언어를 낳게 한 모태 언어이므로, 소프트웨어 전문가로서 탄탄한 기반을 갖추기 위해서라면 C++ 언어에 대한 이해가 필요하다. 이 책은 정곡을 찌르는 핵심을 담은 이론과 명료한 문제 제시, 실행 결과를 삽입한 실전 문제들을 담고 있어 이론과 실전을 겸비한 탄탄한 기반의 소프트웨어 전문가가 되기 위해 반드시 보아야 하는 C++ 언어의 충실한 이해서이다.

이 책의 특징

내용을 쉽게 이해하도록 돕는 설명과 삽화

C++언어의 프로그래밍 기술을 스토리를 엮듯이 쉽게 풀어내는 설명과 그림으로 구성하고있어 C++ 언어를 쉽게 이해할수 있다.

눈과 직관만으로도 이해할 수 있는 구성
키워드 강조, 하이라이팅, 말풍선, 그림, 삽화, 다양한 색 등이 어우러져 눈과 직관만으로도 쉽게 이해할 수 있다.

다양한 문제를 통해 실전 감각 익히기
Check Time 문제, 활용 예제와 실습 예제, Open Challenge 프로젝트 문제, 이론 및 실습 연습문제로 실전 감각을 점진적으로 키울 수 있도록 구성하였다. Open Challenge 문제는 재미있는 내용으로 엮어 독자 스스로 흥미를 가지고 도전해 볼 수 있도록 하고 있다.

핵심을 담은 문제와 독창적인 코딩 문제
정곡을 찌르는 핵심을 담은 이론 문제, 명료한 문제 제시와 실행 결과를 삽입한 실전 문제들은 각 장의 주제에 맞는 독창적인 코딩 문제와 함께 난이도별로 구성하였다. 따라서 독자가 어떤 코드를 작성해야 하는지 분명히 하고 있다.

이 책의 내용

1장은 C++ 언어에 대해서 설명한다. C++ 언어의 역사와 특징을 알아보고 C++ 프로그램의 개발 과정을 설명한다. 2장은 C++ 프로그래밍의 기본에 대해서 설명한다. C++ 프로그램의 기본 요소와 화면 출력에 대해 알아보고 문자열을 다루는 방법과 키보드로부터 문자열을 입력받는 방법을 설명한다. 3장은 클래스와 객체에 대해 설명한다. 객체, 클래스, 생성자, 소멸자, 접근 지정, 인라인 함수, C++ 구조체에 대해 이해하고 바람직한 C++ 프로그램의 작성 과정을 알아본다.
4장은 객체 포인터와 객체 배열, 동적 메모리 할당 및 반환, 객체와 객체 배열의 동적 생성 및 반환에 대해 설명한다. 또한 this의 기본 개념과 제약 조건, string 클래스를 이용한 문자열 사용에 대해 알아본다. 5장은 함수와 참조, 복사 생성자에 대해 설명한다. 값에 의한 호출, 주소에 의한 호출, 객체 치환 및 객체 리턴, 참조와 함수에 대해 알아본다. 또한 깊은 복사와 얕은 복사에 대해 설명한다. 6장은 함수 중복과 static 멤버에 대해 설명한다. 디폴트 매개 변수, 형 변환으로 인한 모호성, 참조 매개 변수로 인한 모호성, 디폴트 매개 변수로 인한 모호성을 알아본다. 또한 static 멤버의 활용에 대해 설명한다.
7장은 프렌드와 연산자 중복에 대해 설명한다. 프렌드의 개념, 이항 연산자 중복, 단항 연산자 중복에 대해 알아본다. 또한 연산자 함수를 클래스의 외부 함수로 작성하고 프렌드로 선언하는 방법을 설명한다. 8장은 상속의 개념, 클래스 상속과 객체, 상속과 객체 포인터, protected 접근 지정에 대해 설명한다. 또한 상속의 종류, 다중 상속의 선언과 활용, 가상 상속의 선언과 가상 상속으로 다중 상속의 문제를 해결하는 방법에 대해 알아본다. 9장은 가상 함수와 추상클래스에 대해 설명한다. 상속 관계에서의 함수 중복과 가상 함수와 오버라이딩의 활용 사례에 대해 알아본다. 또한 추상 클래스의 개념, 구현, 용도에 대해 설명한다.
10은 템플릿과 표준 템플릿 라이브러리(STL)에 대해 설명한다. 일반화의 개념을 이해하고 다양한 제네릭 함수와 제네릭 클래스를 만들어보고 C++ 표준 템플릿 라이브러리(STL)와 활용에 대해 알아본다. 11장은 C++ 입출력 시스템에 대해 설명한다. 스트림 입출력에 대해 이해하고 문자 입출력, 포맷 입출력, 사용자 삽입 연산자와 추출 연산자에 대해 알아보고 사용자 조작자 만들기에 대해 설명한다. 12장은 C++ 파일 입출력에 대해 설명한다. 텍스트 파일과 바이너리 파일에 대해 이해하고 파일 읽기 및 쓰기, 스트림 상태에 대해 알아본다. 또한 임의 접근으로 인한 파일 입출력에 대해 설명한다. 13장은 예외 처리와 C 언어와의 링크 지정에 대해 설명한다. 실행 오류와 오류 처리 방법에 대해 이해하고 예외 처리 코드를 작성하는 방법을 알아본다. 또한 C 언어로 작성된 소스 코드나 이미 컴파일된 목적 코드를 C++ 프로그램에서 사용하는 방법을 알아본다.

부록에서 다룬 내용은 다음과 같다.
부록 A: C++와 C의 다른 부분을 비교ㆍ설명한다.
부록 B: 이름 공간과 namespace에 대한 개념, 자신만의 이름 공간을 만드는 방법 등을 설명한다.
부록 C: 키 입력 시 흔히 발생하는 두 가지 문제에 대해 설명한다.
부록 D: 생성자를 private이나 protected로 작성하는 경우에 대해 설명하고, 대표적인 사례로 singleton 프로그래밍 기법을 설명한다.
부록 E: 한글 문자와 입출력에 관해 자세히 설명한다.
부록 F: 본문에서 다루지 못했던 [], new, delete, (), = 연산자를 작성하는 방법을 사례와 함께 설명한다.
부록 G: STL의 고급 활용에 대해 설명한다.
부록 H: RTTI(실행 중에 객체의 타입과 관련된 정보를 알아내는 기법) 를 이해하기 위해 typeid 연산자, type_info 클래스, dynamic_cast 연산자에 대해 소개한다.
부록 I: 파일 입출력과 관련된 몇 가지 이슈를 설명하고, 점수 관리 응용프로그래밍 사례를 통해 파일 입출력 코드 작성에 대해 설명한다.
부록 J: 본문에 필요한 ASCII 코드표를 첨부하였다.

목차

CHAPTER O1 C++ 시작
1.1 컴퓨터와 프로그래밍
1.2 C++ 언어의 역사
1.3 C++ 언어의 특징
1.4 C++ 프로그램 개발 과정
1.5 C++ 표준 라이브러리
1.6 Visual C++를 이용한 C++ 프로그램 개발
요약
Open Challenge / 연습문제

CHAPTER O2 C++ 프로그래밍의 기본
2.1 C++ 프로그램의 기본 요소와 화면 출력
2.2 namespace와 std::
2.3 키 입력 받기
2.4 키보드로 문자열 입력
2.5 #include 에 숨은 진실
요약
Open Challenge / 연습문제

CHAPTER O3 클래스와 객체
3.1 객체에 대한 이해
3.2 C++ 클래스 만들기
3.3 객체 생성과 객체 활용
3.4 생성자
3.5 소멸자
3.6 접근 지정
3.7 인라인 함수
3.8 C++ 구조체
3.9 바람직한 C++ 프로그램 작성법
요약
Open Challenge / 연습문제

CHAPTER O4 객체 포인터와 객체 배열, 객체의 동적 생성
4.1 객체 포인터
4.2 객체 배열
4.3 동적 메모리 할당 및 반환
4.4 객체와 객체 배열의 동적 생성 및 반환
4.5 this 포인터
4.6 string 클래스를 이용한 문자열 사용
요약
Open Challenge / 연습문제

CHAPTER O5 함수와 참조, 복사 생성자
5.1 함수의 인자 전달 방식 리뷰
5.2 함수 호출시 객체 전달
5.3 객체 치환 및 객체 리턴
5.4 참조와 함수
5.5 복사 생성자
요약
Open Challenge / 연습문제

CHAPTER O6 함수 중복과 static 멤버
6.1 함수 중복
6.2 디폴트 매개 변수
6.3 함수 중복의 모호성
6.4 static 멤버
요약
Open Challenge / 연습문제

CHAPTER O7 프렌드와 연산자 중복
7.1 C++ 프렌드 개념
7.2 연산자 중복
7.3 이항 연산자 중복
7.4 단항 연산자 중복
7.5 프렌드를 이용한 연산자 중복
요약
Open Challenge / 연습문제

CHAPTER O8 상속
8.1 상속의 개념
8.2 클래스 상속과 객체
8.3 상속과 객체 포인터
8.4 protected 접근 지정
8.5 상속과 생성자, 소멸자
8.6 상속의 종류 : public, protected, private 상속
8.7 다중 상속
8.8 가상 상속
요약
Open Challenge / 연습문제

CHAPTER O9 가상 함수와 추상클래스
9.1 상속 관계에서의 함수 중복
9.2 가상 함수와 오버라이딩
9.3 가상 함수와 오버라이딩의 활용 사례
9.4 추상 클래스
요약
Open Challenge / 연습문제

CHAPTER 10 템플릿과 표준 템플릿 라이브러리(STL)
10.1 일반화와 템플릿
10.2 다양한 제네릭 함수 만들기
10.3 제네릭 클래스 만들기
10.4 C++ 표준 템플릿 라이브러리(STL)와 활용
요약
Open Challenge / 연습문제

CHAPTER 11 C++ 입출력 시스템
11.1 C++ 입출력 기초
11.2 ostream의 멤버 함수를 이용한 문자 출력
11.3 istream의 멤버 함수를 이용한 문자 입력
11.4 포맷 입출력
11.5 삽입 연산자(《)와 추출 연산자(》)
11.6 사용자 조작자 만들기
요약
Open Challenge / 연습문제

CHAPTER 12 C++ 파일 입출력
12.1 텍스트 파일과 바이너리 파일
12.2 파일 입출력 개요
12.3 《와 》 연산자를 이용한 간단한 텍스트 파일 입출력
12.4 파일 모드
12.5 멤버 함수를 이용한 텍스트 I/O
12.6 바이너리 I/O
12.7 스트림 상태 검사
12.8 임의 접근
요약
Open Challenge / 연습문제

CHAPTER 13 예외 처리와 C 언어와의 링크 지정
13.1 실행 오류와 오류 처리
13.2 예외와 예외 처리
13.3 예외 처리에 대한 자세한 설명
13.4 예외 클래스 만들기
13.5 C++ 코드와 C 코드의 링킹
요약
Open Challenge / 연습문제

부록 A. C와 C++ 비교
부록 B. namespace
부록 C. 키 입력 시 흔히 발생하는 문제
부록 D. private이나 protected 생성자 : singleton 사례
부록 E. 한글 문자열과 한글 입출력
부록 F. 연산자 중복 추가 설명
부록 G. STL 고급 활용
부록 H. RTTI-실행 중에 포인터로 실제 타입 알아내기
부록 I. 파일 입출력 팁과 응용 사례
부록 J. ASCII 코드

저자소개

저자 황기태 교수는 1980년대 국내 대학생 벤처 1호 회사인 비트컴퓨터 창업자 조현정 회장과 함께 비트교육센터를 운영하면서, 초대 센터장으로서 비트에서 7년간 독창적인 실전 프로젝트 아이디어로 IT 전문가 양성에 온힘을 쏟아 지금의 IT 프로그래머의 국내 최고 산실인 비트스쿨이 있게 하였다. 당시 누구도 뛰어들지 않았던 C프로그램 전문가 과정, 유닉스 전문가 과정, 윈도우즈 전문가 과정 등을 운영하면서 ‘비트 교육의 신화’를 창조하였다. 황기태 교수는 프로그래밍 기술에 관한 저술에도 힘써 《비트 프로젝트 1호》, 《비트 프로젝트 2호》를 비롯하여 《어드밴스 윈도우 NT》, 《자바스크립트 웹 프로그래밍》, 《DHTML 자바스크립트 프로그래밍》, 《위피 자바, jlet 모바일 프로그래밍》, 《명품 JAVA Programming》 등을 출간하였다. 현재는 한성대학교 컴퓨터공학과 교수로 있으며 후진 양성과 프로그래밍 언어의 개발에 많은 시간을 보내고 있다.

도서소개

『C++ Programming』은 2013년 현재 수많은 대학의 자바 강좌에서 쓰이는 《명품 JAVA Programming》의 저자인 황기태 교수가 20여 년에 걸친 프로그래밍 언어 개발 경험과 강의 경험을 모두 쏟아부어 만든 책이다. ‘비트 교육의 신화’를 창조한 저자답게 이 책은 C++ 언어의 프로그래밍 기술을 스토리를 엮듯이 쉽게 풀어내어 C언어를 처음 접하는 이들도 개념을 쉽게 이해할 수 있도록 하고 있다. 더욱이 내용을 쉽게 이해하도록 그림과 삽화를 다양하게 구성하고 있으며, 소스 코드가 한눈에 들어오도록 해당 소스 코드에 주석을 달아 소스 코드에 대한 설명과 결과가 한눈에 들어오도록 하고 있다.

교환 및 환불안내

도서교환 및 환불
  • ㆍ배송기간은 평일 기준 1~3일 정도 소요됩니다.(스프링 분철은 1일 정도 시간이 더 소요됩니다.)
  • ㆍ상품불량 및 오배송등의 이유로 반품하실 경우, 반품배송비는 무료입니다.
  • ㆍ고객님의 변심에 의한 반품,환불,교환시 택배비는 본인 부담입니다.
  • ㆍ상담원과의 상담없이 교환 및 반품으로 반송된 물품은 책임지지 않습니다.
  • ㆍ이미 발송된 상품의 취소 및 반품, 교환요청시 배송비가 발생할 수 있습니다.
  • ㆍ반품신청시 반송된 상품의 수령후 환불처리됩니다.(카드사 사정에 따라 카드취소는 시일이 3~5일이 소요될 수 있습니다.)
  • ㆍ주문하신 상품의 반품,교환은 상품수령일로 부터 7일이내에 신청하실 수 있습니다.
  • ㆍ상품이 훼손된 경우 반품 및 교환,환불이 불가능합니다.
  • ㆍ반품/교환시 고객님 귀책사유로 인해 수거가 지연될 경우에는 반품이 제한될 수 있습니다.
  • ㆍ스프링제본 상품은 교환 및 환불이 불가능 합니다.
  • ㆍ군부대(사서함) 및 해외배송은 불가능합니다.
  • ㆍ오후 3시 이후 상담원과 통화되지 않은 취소건에 대해서는 고객 반품비용이 발생할 수 있습니다.
반품안내
  • 마이페이지 > 나의상담 > 1 : 1 문의하기 게시판 또는 고객센터 1800-7327
교환/반품주소
  • 경기도 파주시 문발로 211 1층 / (주)북채널 / 전화 : 1800-7327
  • 택배안내 : CJ대한통운(1588-1255)
  • 고객님 변심으로 인한 교환 또는 반품시 왕복 배송비 5,000원을 부담하셔야 하며, 제품 불량 또는 오 배송시에는 전액을 당사에서부담 합니다.