본문 바로가기
GGM/자료구조

20230302 - 자료구조 - 기초 사항

by DDongYeop 2023. 3. 2.
728x90

C++은 C에 객체지향프로그래밍이 추가됐다고 생각 하면 된다. 

 

 

절차지향 프로그래밍은 아래처럼 함수를 두고 사용을 한다면 

객체지향 프로그래밍은 아래 사진처럼 클래스 안에 함수를 두는 방식을 사용한다. 

객체지향 프로그램의 특징엔 캡슐화, 정보은닉, 상속, 다형성이 있다. 

 

 

C++의 특징엔 

클래스 : 클래스를 이용하여 하나의 객체의 속성과 동작들을 한곳으로 모아서 정의 할 수 있다. 

상속 : 클래스 상속 받아서 기존 코드 재사용 가능 

연산자 중복 : 대상에 따라서 동일한 연산자로 새로운 연산을 정의 할 수 있음

함수 중복 : 매개 변수만 다르면 동일한 이름의 함수를 여러개 만들 수 있음

new와 delete 연산자 : 동적 메모리 할당과 해제를 담당하는 연산자 

제네릭 : 클래스 정의를 자료형에 상관 없이 재사용 하는 기술 

 

 

java는 smalltalk와 C++이 합쳐져서 만들어졌고, C#은 C++과 java를 합쳐서 만들어짐. 

그래서 java와 C#은 C++과 전반적인 문법이나 객체 모델은 거의 같다. 

 

 

C++은 빠른 실행 속도, 효율적 메모리 사용하여 고성능 게임이나 인공지능에 적합하다. 

 

 

C++11과 C++14에선 많은 새로운 기능을 도입했다. 

 - 범위 기반의 루프 

 - 타입 자동 추론 기능

 - 보편적인 초기화 

- 람다식 

 

#은 전처리 지시자를 의미한다. 즉 먼저 실행 한다. 

iostream을 추가하고 추가한다면 cin, cout 등을 사용할 수 있다. 

#include <iostream>

 

std라는 네임 스페이스를 사용한다. 

이게 없다면 std::cin이런식으로 사용해야한다. 

using namespace std;

 

출력할땐 cout을 사용한다. cout << " "; 이런식으로 사용하여 cout 쪽으로 보내준다고 생각하면 된다. 

입력 할땐 cin을 사용한다. cin >> 변수; 이런식으로 사용하여 입력 받은 것을 변수로 보내준다. 

만약 입력할때 띄어쓰기를 한다면 띄어쓰기 전 단어만 변수로 들어가게 된다. 

	char arr[100];
	cout << "What's tour name?" << endl;
	cin >> arr;
	cout << "hi" << " " << arr;
728x90

댓글