[이것이 C++이다] Part 01. C에서 C++로 문법 전환하기 (1)

Part 01. C에서 C++로 문법 전환하기

Chapter 01. C와는 다른 C++

1.1 C와 C++의 차이, 1.2 hello world에서 본 C++

  • Programming 언어는 ‘절차지향’과 ‘객체지향’으로 나뉜다.
  • 절차 지향
    • Block 단위의 함수가 사용된 구문 순서대로 연산이 수행된다.
    • 대규모 Project를 만드는 데 부족함이 있다.
    • 함수(도구)의 사용법을 잘 알고 사용해야 한다.
  • 객체 지향
    • Program이 커지면 기능적 요소를 분리할 필요가 있다.
    • [Class] : C언어의 [함수 + 구조체]와 매우 유사하다.
    • 객체 지향은 개념(설계, 추상)과 구현(실체)을 구분한다.
    • 구조가 간결하며 구체적 구현은 차후.
    • 만들어진 함수(도구)를 잘 선택해야 한다.

1.3 인스턴스와 입출력 흐름

  • C++ 에서는 ‘변수’라는 표현보다 ‘인스턴스’라는 표현에 익숙해 져야 한다.
  • namespace 은 ‘소속’ 정도로 이해하자.
    • std::cout : std namespace(소속)인 cout 객체는 iostream 클래스의 인스턴스이다.

1.4 자료형

  • C style 선언 및 정의
    int a = 10;
    
  • C++ style 선언 및 정의

    #include<iostream>
    
    int main() {
      int a(10);
      int b(a);  // b는 a를 복사하여 만든다.
      int (10);
      auto c(a);  // b의 형식은 원본 a의 형식을 따라 결정된다.
      std::cout << a + b + c << std::endl;
      return 0;
    }
    // 30