2020. 6. 24. 12:53ㆍ🧑🏻💻/C & C++
C++은 C 언어에 객체지향의 개념을 더한 언어이다. AT&T 벨 연구소에서 일하던 비야네 스트롭스트룹(Bjarne Stroustrup)이 만들었다. 원래 이름은 C with Classes였으나 증가 연산자(++) 기능을 더하면서 1984년에 이름이 C++로 바뀌었다.
C 언어의 확장판으로 만들어진 객체지향형 프로그래밍 언어이다. 대규모 응용프로그램을 만드는 데 최적의 프로그래밍 언어로 간주되고 있다.
탄생과 역사
1980년대까지 전세계적으로 가장 많은 사람들에게 사랑을 받고 가장 널리 사용된 프로그래밍 전문 언어는 C이다. 하지만 C언어 역시 한계에 부딪치게 되었고 이에 따라 고도로 복잡한 프로그램을 관리하기 위하여 C++가 탄생하게 되었다.
C++는 처음 소개된 이후로 1985년과 1989년, 그리고 C++에 ANSI표준을 적용하기 시작한 시기 등 3번에 거처 개정되었다. 1994년에 최초로 표준안이 발표되었으며 ANSI C++위원회는 사실상 스트루스트럽(C개발자)이 설정한 모든 사양을 그대로 수용하고 그외의 약간의 사양을 덧붙였다. 그렇기 때문에 C++는 C프로그래머가 쉽게 C++를 사용할 수 있다는 관련성에서 큰 장점이 있다.
객체지향 프로그래밍(OOP : Object Oriented Programing)
C++는 흔히 객체지향적 언어라고 한다. 객체 지향 프로그래밍은 새로운 방식의 프로그래밍 접근 방법이다. 프로그래밍이 탄생한 이후로 그 방식은 많은 변화를 겪었는데, 프로그래밍이 현격하게 다른 변혁을 겪을 때마다 새로운 접근 방식이 나타나 프로그래머가 그 전 단계보다 훨씬 더 복잡해진 프로그램을 처리할 수 있도록 도왔다. 예전의 구조적인 프로그래밍은 복잡한 프로그램 작성 시 프로그램의 규모가 일정 한계를 넘으면 가끔씩 실패하는 경우를 제외하고 상당히 우수한 기능을 해왔지만 그 보다 좀 더 복잡한 프로그램을 쓸 수 있는 새로운 프로그래밍 방식이 필요했다. 그래서 탄생한 것이 객체 지향 프로그래밍이다. 이는 구조적인 프로그래밍에서 사용되는 개념들을 최대한 활용하여 종전과는 다른 방식으로 이러한 개념을 엮어내는 역할을 한다.
특징
C의 대부분의 특징을 포함하고 있으므로 시스템 프로그래밍에 적합할 뿐만 아니라 클래스, 연산자 중복, 가상 함수 등과 같은 특징을 갖추고 있어 객체 지향 프로그래밍에 적합하다. 또한 C와 일치하는 부분이 C++를 널리 대중적인 언어가 되는데 도움을 주었다.
출처 및 참조, 그외 볼만한 사이트.
'🧑🏻💻 > C & C++' 카테고리의 다른 글
[C] 2차원 배열 malloc / free / 메모리 할당과 해제 (0) | 2020.07.10 |
---|---|
[C / C++] Jumping Cat / C 게임 / C++ 게임 / C언어 게임 / 고양이 게임 만들기 (0) | 2020.06.24 |
[C++] ConsoleColor / setColor() / 색 넣는 함수 / how to change color in cmd (0) | 2020.06.24 |
[C] system()함수 / cmd 명령어 / 명령 프롬프트 / 명령 줄 인터프리터 (0) | 2020.06.23 |
[C] C언어/ C언어 표준 (0) | 2020.06.18 |