[C++] 왜 C++을 쓰는가?
- 장점
속도가 빠르다. 기계어랑 가장 가까운 언어
- 다른 언어의 경우는 왜 속도가 느린가?
컴퓨터에서 OS가 제일 먼저 실행되는데 내가 만든 프로그램은 운영체제에게 실행시켜달라 요청을 통해 실행된다.
그런데 C#이나 Java는 이 단계에 가상 머신이 낀다. OS가 가상 머신을 실행시키고 우리의 프로그램은 가상 머신 상에서 실행된다.
-> 내가 만든 프로그램은 .Net framework에서 동작한다.
-> 설계 동작이 느릴 수밖에 없다.
-> 그런데도 왜? -> '메모리 관리'를 해준다. 요즘은 속도보다 편리함 중시.
- C++ 의 경우
But C++는 중간 과정이 없이 즉시 실행된다.
-> 메모리 관리 서포팅 x
-> 내가 직접 메모리 관리를 할 수 있다.
-> 최적화 가능
- 왜 대부분의 학교와 학원에서 C++을 가르치기를 꺼려하는가?
-> 가르치는 입장에서도 가르치는 사람의 실력이 중요.
-> 학원은 쉬운 언어를 가르쳐 당장 프로그램을 만드는 게 중요하기 때문.
->(그런데 가르치는 곳은 다 가르치던데...)
- 현업에서는 어떨까?
-> 회사마다 어떤 프로그램을 만드냐에 따라 다르다. 빠른 응대가 중요한 곳에선 C#, Java가 더 필수이다.
-> 자신이 원하는 회사가 어떤 언어를 사용하느냐를 미리 찾아보는 게 중요.
- 엔진의 언어
Unity 엔진도 C++로 만들어져 있다. 다만 C# 스크립트를 제공
내가 공부하고자 하는 Unreal은 C++ 언어를 사용하기에 공부하기 시작했다.
- C, C++ 문법을 공부하는데 추천하는 강의 영상
정말 기초부터 자세하고 재미있게 가르쳐주는 무료강의이다.
처음 문법을 배울때 매우 유용하기에 추천드린다.
처음에는 C언어로 자료형과 연산자부터 배우며 포인터, 구초체, 동적할당, 링크드 리스트 등을 배운다.
그다음에는 C++ 문법으로 넘어가면서 Class를 통해 객체의 개념을 알려주며 더욱 심화적인 내용을 다룬다.
https://youtube.com/playlist?list=PL4SIC1d_ab-aOxWPucn31NHkQvNPHK1D1
'공부 > C, C++' 카테고리의 다른 글
[C] 비교 연산자, if else 구문 (0) | 2021.12.28 |
---|---|
[C] 논리 연산자 (0) | 2021.12.26 |
[C] 증감 연산자 (0) | 2021.12.26 |
[C] 산술 연산자 (0) | 2021.12.26 |
[C] 자료형 (정수형, 실수형) (0) | 2021.12.23 |
댓글