사실 이 항목이 왜 존재 하는지 모르겠다. "왜" 란 느낌이 팍 들게 만들었던 질문과 예제코드를 보자.
첫번째 질문, std::cin과 std::cout 은 무슨 타입인가? 코드로 보는게 더 편하니, 코드 첨부
이 코드는 <iosfwd>에서 발취한것이며, 더 자세한것은 각 코드의 클래스 템플릿이 무엇인지 알아야 가능 할 것 같다. 이 코드를 보면 알겠지만, 4, 5 라인에 istream과 ostream 을 정의하고 있는데, cin 과 cout 의 클래스이다.
두번째 질문, 자신의 입력을 그대로 출력하며, 다음의 두 가지 방법에 대해서 같은 결과를 비요주는 ECHO 프로그램을 작성 하라.
ECHO <infile >outfile
ECHO infile outfile
가장 많이 사용 되는 커맨드라인 환경에서 첫 번재, 명령어는 프로그램이 cin에서 입력 받아 cout로 출력을 보내는 것을 의미한다. 두번째 명령은 프로그램이 infile에서 입력받아 outfile에 출력을 생성하다록 지시한다.
바로 이 부분에 대해서 내가 "왜 이 항목이 존재하지?"란 생각을 하게 된다. 바로 답 코드를 보자.
그리고 그 뒤에, 컴파일 타임 다형성과 런타임 다형을 가지고 논쟁을 하고 있고, 캡슐화를 지향하는 언어를 짜야 한다고 지적을 한다. .. 하지만 정작 중요한 각 클래스에 대한 설명은.. 전무하다;;
항목 이름을 바꾸어 주었어라도 만족 했을 것을...
총평
음!
'책 정리 > More Exceptional C++' 카테고리의 다른 글
항목 6 : 컨테이너, 포인터 그리고 컨테이너가 아닌 컨테이너 (0) | 2008.12.22 |
---|---|
항목 5 : typename ( 난이도 : 7 ) (0) | 2008.12.22 |
항목 4 : 확장 가능한 템플릿 : 상속을 통해서 아니면 특성(traits) 클래스를 통해서? ( 난이도 : 7 ) (0) | 2008.12.22 |
항목 3 : 판단자(predicate) Part 2 : 상태와 판단자 ( 난이도 : 7 ) (0) | 2008.12.20 |
항목 2 : 판단자(predicate) Part 1 : remove()가 삭제 하는 것은? (난이도 : 4 ) (0) | 2008.12.19 |
항목 16 : 최적화 미루기 Part 4 : 멀티쓰레드 환경 (0) | 2008.12.18 |
항목 15 : 최적화 미루기 Part 3 : 반복자와 참조 ( 난이도 : 6 ) (0) | 2008.12.18 |
항목 14 : 최적화 미루기 Part 2 : 미루기에 대한 소개 ( 난이도 : 3 ) (0) | 2008.12.18 |
항목 13 : 최적화 미루기(lazy optiomization) Part 1 : 그저 평범한 String (난이도 : 2 ) (0) | 2008.12.18 |
항목 12 : inline ( 난이도 : 4 ) (0) | 2008.12.17 |
최근댓글