C++언어란 ?
AT&T 벨연구소의 컴퓨터 과학자 비야네 스트롭스트룹(Bjarne Stroustrup)이 개발한 언어로 C언어를 유지, 확장한 언어입니다. 쉽게 말해 C언어가 더욱(+) 더(+) 좋아진 언어라고 말할 수 있습니다. C++언어의 특징으로는 C언어에 클래스 개념을 추가하고 가상함수, 연산자 중복정의,다중상속, 템플릿, 예외처리, 엄격한 타입검사, 범용언어, 이식성 등이 있습니다.
비야네 스트롭스트룹(Bjarne Stroustrup)
C++ 프로그래밍 작성단계
소스파일(.cpp) -> 오브텍트파일(.obj) ->실행파일(.exe)
객체지향의 개념
C++언어는 Java와 같은 객체지향 언어입니다. 객체지향 언어에서는 객체지향의 개념을 아는것이 가장 중요합니다. 객체지향은 데이터와 알고리즘을 하나로 묶는개념에서 시작되었습니다. 아래 4가지 개념이 객체지향의 중요한 개념입니다.
- 정보은닉(Information Hiding) : 데이터에 대한 불필요한 접근을 차단하여서 데이터를 보호하는 것
- 캡슐화(encapsulation) : 데이터와 알고리즘을 하나의 단위(클래스)로 묶고, 정보를 은닉 하는것으로, 우리가 먹는 캡슐약을 생각하면 이해하기 쉽습니다. 캡슐안에 여러 약이 들어있고 캡슐로 감싸서 안에 약들이 보이지 않는 것과 같습니다.
- 상속 : 비슷한 클래스가 이미 있다면 그 클래스를 가져다 사용하는 것
- 다형성(polymorphism) : 같은 이름의 함수나 연산자를 중복 정의해 상황에 맞게 적절한 함수나 연산자를 프로그램이 자동적으로 선택하는 것
객체지향의 프로그래밍의 최종 목표 : 기존의 코드를 재사용 하는 것
* 출처 : 한국기술교육대학교 온라인평생교육원 비쥬얼 C++ 프로그래밍