본문 바로가기

C++ 자료구조

[c++] 자료구조와 알고리즘

[C++ 이란?]

C++은 C에서 Class가 추가된 새로운 프로그래밍 언어이다.

C는 절차지향 언어이지만 C++은 객체지향 언어이다.

 

여기서 궁금한 점 2가지가 생긴다.

1. C++과 C#의 차이점은 무엇일까?  2. 객체지향프로그래밍은 무엇일까?

 

 

[C++과 C#의 차이점]

C++과 C#의 가장 큰 차이점은 메모리 관리에 있다. unity는 C#을 사용하지만 언리얼 외의 자체엔진들은 C++을 사용한다.

그 이유가 메모리 관리를 직접 할 수 있기 때문에 프로그램이 빠르게 돌아간다. 반대로 C#은 메모리 관리를 해주는 Garbage Collection이 존재하기 때문에 메모리 직접 관리할 수 없다.

 

 

[객체지향프로그래밍]

객체지향프로그래밍에서 객체란 Object, 즉 목적이 되는 대상이다. 객체는 자료와 기능을 묶어놓은 것을 말하는데 이 객체들을 찍어내는 틀이 Class이다. 이러한 객체들간의 상호작용을 통해 로직을 구성하는 프로그래밍 방법이 객체지향프로그래밍이다.

 

 

[객체지향프로그래밍의 특징]

객체지향프로그래밍은 특징 4가지가 존재한다.

1. 추상화 - 불필요한 세부 사항들은 제거하고 가장 본질적이고 공통적인 부분만을 추출하여 표현한다.

2. 다형성 - 같은 이름이지만 다른 기능을 수행할 수 있다.

3. 캡슐화 - 데이터를 외부로 부터 보호한다.

4. 상속 - 부모 클래스에 정의된 변수 및 메서드를 자식 클래스에서 상속받아 사용한다.


 

이렇게 자료구조와 알고리즘을 본격적으로 배우기 전 C++에 관해 기초를 알아보았다.

 

 

 

'C++ 자료구조' 카테고리의 다른 글

[c++] vector  (0) 2024.03.26
[c++] 배열  (0) 2024.03.25
[c++] 제어 구조와 함수  (0) 2024.03.19
[c++] 문자열(string)  (0) 2024.03.12
[c++] c++의 기본 개념  (0) 2024.03.05