0.3 Introduction to C/C++

주홍영·2022년 3월 9일
0

Learncpp.com

목록 보기
3/199

https://www.learncpp.com/cpp-tutorial/introduction-to-cplusplus/

Before C++, there was C

C의 탄생 목적

  • minimalistic language that was easy to compile
  • allowed efficient access to memory
  • produced efficient code
  • self-contained (not reliant on other programs)
    프로그래머에게 많은 권한을 줌과 동시에 platform independence를 도와주는

C ended up being so efficient and flexible that in 1973, Ritchie and Ken Thompson rewrote most of the Unix operating system using C
유연해지고 효율적이게 되었다
대부분의 operating system이 어셈블리로 써져있다.
특정한 cpu에서 작동하는 어셈블리와 달리
C는 portability와 Unix가 많은 다른 종류의 컴퓨터에 쉽게 컴파일되는 것을 가능하게 만들었고
채택을 가속화시켰다

C++

c++은 c의 확장판으로 1979에 시작
c의 기능에 더불어 더 많은 기능이 추가됨 (c에만 있는 것도 있어서 strictly 맞는 말은 아님)
c++의 명성은 주로 oop에 기인했다
object라는 개념이 전통적 프로그래밍 기법과 구분된다

c++11 이라는 major update가 있었고 이때 많은 기능들이 더 추가되었다

C and C++’s philosophy

The underlying design philosophy of C and C++ can be summed up as “trust the programmer” -- which is both wonderful and dangerous
C와 C++의 근본적인 철학은 '프로그래머를 믿자', 그만큼 wonderful하고 위험한...

Q: What is C++ good at?

c++은 높은 성능과 정확한 메모리 컨트롤에 있어서 뛰어나다

  • Video games
  • Real-time systems (e.g. for transportation, manufacturing, etc…)
  • High-performance financial applications (e.g. high frequency trading)
  • Graphical applications and simulations
  • Productivity / office applications
  • Embedded software
  • Audio and video processing
  • Artificial intelligence and neural networks

Q: Do I need to know C before I do these tutorials?

그렇지 않다, c++로 시작해도 perfectly fine이다.
오늘날 C는 대부분 used for niche
use cases: code that runs on embedded devices, when you need to interact with other languages that can only interface with C, etc… For most other cases, C++ is recommended.

단어장

encouraging : 격려하는, 북돋아 주는
end up : 결국 처하게되다
pronounce : 발음하다
superset : 확대집합
primarily : 주로 (프라이메어리)
adhere : 들러붙다, 부착되다
ex) help ensure all compilers adhere to the same set of standards
underlying : 근본적인, 밑에있는
pitfall : 위험, 곤란
excel : 뛰어나다
niche : 아주 편한 자리, 꼭맞는, 틈새

profile
청룡동거주민

0개의 댓글