C++

C++ 기초

spacespear 2023. 1. 11. 14:58

C++의 설계 목표

 1. C언어와의 호환성 유지

 2.소프트웨어 재사용 및 유지 보수 간편화----이것이 곧 객체지향의 성격

 3.엄격한 타입 체크==>오류 가능성 최소화+디버깅 보조

 4.실행 시간의 효율성 향상==>2번의 성격으로 함수 호출 증가=>인라인 함수 도입 등의 방법으로 효율 향상

 

C언어에서 추가된 기능

함수 중복,디폴트 매개변수,참조 및 참조에 대한 호출,new delete 연산자, 연산자 재정의,제네릭 함수,클래스가 있다.

 

C++의 가장 큰 특징인 객체지향이란?

설계 목표 2번에 해당하는 일을 수행하기 쉽게 하기 위하여 만들어진 것

캡슐화가 있다. 캡슐화는 알약처럼 약의 내용물(데이터)를 캡슐로 감싸는 것처럼 외부로부터 데이터를 보호하는 역할을 한다.

C++에서 캡슐을 담당하는 것은 클래스(class)이다.

클래스를 이용하여 외부공개(public)  비공개(private) 선언을 하여 데이터 보호를 할 수 있다.

또한 상속이라는 특징으로 자식과 부모 관계처럼 클래스가 형성된 경우

부모 클래스에 선언된 멤버를 자식 클래스에 재사용이 가능하다.

소프트웨어 생산성을 증가시킬 수 있다.

"다형성"이라는 특징은 하나의 연산자로 다양한 업무를 할 수 있는 것이다.

2+3=5, 흰색+빨강=분홍색, 사과+연필=사과연필

위의 예처럼 다같은 +라는 연산자이지만 역할이 다른 것을 의미한다.

 

C언어와의 차이점

C언어는 절차지향으로 A라는 행동을 하면 B를 한다와 같이 절차대로 시행하는 명령어를 나열하여 프로그래밍을 하는 것이다. 따라서 C언어의 경우에는 일종의 플로우 차트와 같은 형식으로 나타내어진다.

C++의 경우에는 서로 객체들의 관계에 따라서 상호 작용을 하고 그 결과 값을 내보내는 형식을 가진다.

'C++' 카테고리의 다른 글

C++ << 연산자  (0) 2023.01.12
C++ 기본적인 연산자 소개  (0) 2023.01.12
C++ 소스 프로그램 작성  (0) 2023.01.11
C++ 프로젝트 시작하기  (0) 2023.01.11
C++ 처음 시작-Visual Studio  (0) 2023.01.08

<드래그 방지용 ㅋ코드>