디시인사이드 갤러리

갤러리 이슈박스, 최근방문 갤러리

갤러리 본문 영역

C++

C++(118.218) 2009.08.14 22:31:46
조회 135 추천 0 댓글 7

C가 전세계적으로 가장 많은 사랑을 받고 가장 널리 사용되는 프로그램 전문 언어
중의 하나이기는 하지만 이 언어 역시 한계에 부딪히게 되었습니다.
이에 따라 고도로 복잡한 프로그램을 관리하기 위하여 C++가 탄생하게 된것이죠.
1980년 잔 트루스트럽(Bjarne Stroustrup)이란 사람이 뉴저지주의 머리 힐에 있
는 벨 연구소에서 근무할 당시 상업용 소프트웨어 개발을 위한 가장 일반적인 언
어였던 C를 확장해서 개체 지향 프로그래밍을 구현하는 데 필요한 기능은
제공하였습니다. 그는 C++를 만들었고, 10년이 채 지나지 않아 소수의 AT&T 개발
자가 사용하는 것에서 시작하여 세계적으로 대략 백만 이상의 개발자들이 선택하
는 프로그래밍 언어가 되었습니다. 처음 이 언어의 이름을 "C with Classes"로
지었는데, 1983년에 C++로 그 이름을 바뀌었습니다.
C++는 C 언어의 모든 것을 담고 있기 때문에 C와 호환이 됩니다.
즉 C++는 새로운 프로그래밍 언어가 아니며 이미 널리 사용되고 있는 언어를 향상
시킨 것입니다.

C++는 처음 소개된 이후로 1985년과 1989년, 그리고 C++에 ANSI표준을 적용하기
시작한 시기 등 3번에 걸처 개정되었습니다.
1994년에 최초로 표준안이 발표되었으며 ANSI의 C++위원회는 사실상 스트루스트럽
이 설정한 모든 사양을 그대로 수용하고 그 외의 약간의 사양을 덧붙였을 뿐입니다.
그렇기 때문에 C++는 C프로그래머가 쉽게 C++를 사용할 수 있다는 관련성에서 큰 장점이 있습니다.

C++은 흔히 객체지향적 언어라고 합니다.
이렇듯 객체 지향 프로그래밍을 지원하도록 고안되었습니다.
객체 지향 프로그래밍은 새로운 방식의 프로그래밍 접근 방법입니다. 프로그래밍이 탄생한 이후로 그 방식은 많은 변화를 겪었는데. 프로그래밍이 현격하게 다른 변혁을 겪을 때마다 새로운 접근 방식이 나타나 프로그래머가 그 전 단계보다 훨씬 더 복잡해진 프로그램을 처리할 수 있도록 도왔습니다.
예전의 구조적인 프로그래밍은 복잡한 프로그램 작성시 프로그램의 규모가 일정 한계를 넘으면 가끔씩 실패하는 경우를 제외하고 상당히 우수한 기능을 해왔지만 그 보다 좀더 복잡한 프로그램을 쓸 수 있는 새로운 프로그래밍 방식이
필요했는데, 그래서 탄생한 것이 객체 지향 프로그래밍(Object Oriented Programming)입니다. OOP는 구조적인 프로그래밍에서 사용되는 개념들을 최대한 활용하여 종전과는 다른 방식으로 이러한 개념을 엮어내는 역할을 합니다.
객체 지향 프로그래밍을 사용하면 한 문제를 관련 하위 그룹으로 나눌 수 있습니다. 각 하위 그룹은 객체와 연결을 시켜주는 고유의 코드와 데이터를 가지고 있는 독립적인 객체가 됩니다. 이렇게 함으로써 문제가 훨씬 더 단순해지고
프로그래머들의 규모가 큰 문제들을 관리할 수 있게 되는 것입니다.
C++는 개체 지향 프로그래밍을 완전하게 지원하며 개체 지향 개발의 네 가지 중심인 캡슐화(encapsulation), 데이터 숨김(data hiding), 상속(inheritance),
그리고 다형성(polymorphism)을 모두 포함하고 있습니다.


C와C++의 차이점이라면 C 에서는 프로그램을 작성할때 거의 대부분 stdio.h 를 포
함시켰었으나 C++ 에서는 iostream.h 을 사용합니다.
C에서 입출력 함수로 애용되던 printf(), scanf()대신 cout, cin등의 객체를 주로 사용합니다.
함수의 선언시에 프로토타입까지 반드시 선언해주어야 하고 매개변수(가인수)의
생략이 불가능합니다.
C 의 확장자는 ".C" 인 것에 비해서 C++ 의 확장자는 ".CPP"를 사용합니다.

C++에서 향상된점이라면 변수 선언이 함수의 머릿부가 아닌 중간에서도 선언이
가능하다는 것입니다. 그러나 재정의는 불가능합니다.
자동변수는 블럭을 벗어나면 소멸되어 버리지요.


C++의 특징은 C의 대부분의 특징을 포함하고 있으므로 시스템 프로그램에 적당할 뿐만 아니라 클래스, 연산자 중복, 가상 함수 등과 같은 특징을 갖추고 있어 객체 지향 프로그래밍에 적합합니다. 또한 C와 일치하는 부분이 C++를 널리 대중적인 언어가 되는데 도움을 주었습니다.

추천 비추천

0

고정닉 0

0

댓글 영역

전체 댓글 0
등록순정렬 기준선택
본문 보기

하단 갤러리 리스트 영역

왼쪽 컨텐츠 영역

갤러리 리스트 영역

갤러리 리스트
번호 제목 글쓴이 작성일 조회 추천
설문 힘들게 성공한 만큼 절대 논란 안 만들 것 같은 스타는? 운영자 24/06/10 - -
이슈 [디시人터뷰] 웃는 모습이 예쁜 누나, 아나운서 김나정 운영자 24/06/11 - -
155693 phpschool.com 접속 되나요? [2] 미네르방(124.153) 09.11.04 78 0
155692 컴퓨터계의 미네르바처럼 파고들면 [6] 미네르방(124.153) 09.11.04 201 0
155691 한글이 다른나라 문자보다 당연히 우월해야지.. [2] ㅁㅁ(122.199) 09.11.04 701 0
155690 언어/문자 비교 [5] 피로토스갤로그로 이동합니다. 09.11.04 156 0
155688 횽아들 또 너무 궁금한게 생겼는데 [1] 혀배터갤로그로 이동합니다. 09.11.04 61 0
155687 간단한 게임 에디터를 만드는 방법..? [2] sdfa(221.165) 09.11.04 189 0
155686 근대 flex 가 뭐임 ? [2] 살모넬라(218.154) 09.11.04 121 0
155685 퇴갤 [2] ㅇㅇㅃ갤로그로 이동합니다. 09.11.04 51 0
155684 소프트웨어가 하드웨어에 손상을 입힐 수 있을까?! [10] Triple3갤로그로 이동합니다. 09.11.04 239 0
155683 왜...왜.... 기분이 우울해지는 거지? [6] algo갤로그로 이동합니다. 09.11.04 104 0
155680 한글이건 한자건 히나가라건 컴터에선 0,1이라는 [3] moon:)갤로그로 이동합니다. 09.11.04 110 0
155679 한글과 한국어를 왜 구분을 못할까 [58] 아주아슬갤로그로 이동합니다. 09.11.04 284 0
155677 야이 개쉛기야 [9] 아주아슬갤로그로 이동합니다. 09.11.04 149 0
155672 님들아 이거 던파 프로그램인데 크랙해주실분 구해요 사례금 드림!!!! [8] 변태사냥갤로그로 이동합니다. 09.11.04 173 1
155671 난 몰라 난 몰라 어떡해!! ㅠ_ㅠ [7] idunner(114.201) 09.11.04 373 0
155670 일본어와 중국어가 한국어에 비해 개후달리는 이유 [55] ㅁㄴㅇㄹㄷ(112.222) 09.11.04 304 0
155669 횽들 내가 opengl 애니메이션을 만들어야 되는데 아이디어 제공줌해줍니 [6] moon:)갤로그로 이동합니다. 09.11.04 86 0
155668 룸메새끼가내컴자꾸몰래하는데 안걸리는키로거같은거없음? [13] 병청(117.16) 09.11.04 148 0
155667 근데 횽들 for문으로 별찍고 swap으로 교환하는거 코딩질에 도움됨? [8] 노소프소갤로그로 이동합니다. 09.11.04 139 0
155660 [관심1g만염] 플렉스 간단한 Effect 효과 [3] 캐꼬꼬닭(112.216) 09.11.04 119 0
155659 아..플렉스 Effect 컨츄롤 하기 빡시다... [1] 캐꼬꼬닭(112.216) 09.11.04 99 0
155658 소원수리 했다가 엿된 사나이 [12] 아주아슬갤로그로 이동합니다. 09.11.04 254 0
155654 svn서버 iis에 돌릴순 없엉? [2] 어색해도좋아갤로그로 이동합니다. 09.11.04 67 0
155653 울지마 ㅠㅜ [1] 유리한갤로그로 이동합니다. 09.11.04 71 0
155652 능력자가 되고싶어 읭읭 [2] JuEUS-U갤로그로 이동합니다. 09.11.04 139 0
155651 솔라리스 fstyp 명령어 아는 사람 다 붙어봐 [2] 섬마을갤로그로 이동합니다. 09.11.04 138 0
155649 간단한 업데이트 쿼리 하나만 가르쳐줍메 잉여박휘갤로그로 이동합니다. 09.11.04 109 0
155648 혹시 제로보드 좀아시는분잇나요? [4] ゚゙갤로그로 이동합니다. 09.11.04 100 0
155646 오늘 여자사람 만나고 온 감상문 [7] algo갤로그로 이동합니다. 09.11.04 213 0
155645 win32 api에서 클래스 써도 됨? [3] 김코딩(210.178) 09.11.04 101 0
155642 저번에 눈팅하다가 c언어 예제같은거 확인하는곳잇던데 [3] ゚゙갤로그로 이동합니다. 09.11.04 94 0
155640 파일 시스템, 프로세스, 시그널 관련 시스템 호출 예제 간단한거좀 ㅜ.ㅜ [4] 쇼부갤로그로 이동합니다. 09.11.04 89 0
155639 ★★ 이거 갈쳐주는 횽아 사례한다!!!!!!!!!★★ [10] 1(125.190) 09.11.04 142 0
155638 갑자기 키보드가 손에 안잡힌다... [2] 캐꼬꼬닭(112.216) 09.11.04 113 0
155636 서강대학교 Oasis팀 ACM-ICPC 인도대회 우승 [8] ㄱㄱ(163.239) 09.11.04 274 0
155635 위젯은 뭘로 만들어? [7] 깨갱(122.128) 09.11.04 156 0
155634 WPE(원패킷)과같은 패킷에디터 프로그램 구합니다.(사례해드릴게요) [6] ㅇㅇ(110.8) 09.11.04 4996 0
155633 failed to load file 에러가 뜨네요.. [4] 이게 뭔지(211.172) 09.11.04 1458 0
155632 c++ 설명 잘 되어있는 인터넷 사이트 아는 횽 추천좀 해줘... [7] 까북갤로그로 이동합니다. 09.11.04 142 0
155630 비주얼 스튜디오 C++로 개발은 rad로 안 하나요 [4] ㅁㅁ(211.217) 09.11.04 104 0
155629 윈도7이 와따능 [7] DMW(220.68) 09.11.04 235 0
155628 횽들 교직 신청 어떻게 생각해?? [3] 혼아갤로그로 이동합니다. 09.11.04 108 0
155627 3500원짜리 밥집을 발견했어. [9] 아주아슬갤로그로 이동합니다. 09.11.04 239 1
155625 이거 어디가 오류지 좀 봐주세요.. [8] 이거(211.172) 09.11.04 120 0
155624 아침에 출근하는데 본 문구 [1] 아주아슬갤로그로 이동합니다. 09.11.04 115 0
155623 사막잡신 귀빠진날이 뭐라고... [6] rntjr갤로그로 이동합니다. 09.11.04 145 0
155620 저기여 밑에 글싼 전뉴비입니다 [7] 관성갤로그로 이동합니다. 09.11.04 131 0
155618 횽들 도와주세요 VB관련.. [3] 전늅이(125.141) 09.11.04 115 0
155613 IBM이 노트북을 접은게 쫌 아쉽다.. [6] ㅇㅇ(210.94) 09.11.04 208 0
155611 VB6.0 에서 윈속관련 문제 해결좀 ㅜㅜ 비베비벱(59.6) 09.11.04 77 0
갤러리 내부 검색
제목+내용게시물 정렬 옵션

오른쪽 컨텐츠 영역

실시간 베스트

1/8

뉴스

디시미디어

디시이슈

1/2