ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • <C++> C++ 입문 Day3
    유물/C, C++ 2021. 11. 17. 23:16
    728x90

    📌 #include <그림으로 배우는 C++ (Mana Takahashi 저 / 서재원 역 / 영진닷컴)>

     

    Lesson 7 (함수)

    인라인 함수

    - 인라인 함수는 컴파일러에 의해 호출 부분에 직접 기록되므로, 전체적으로 속도가 향상됨

    inline int max(int x, int y) { if (x > y) return x; else return y; }

    함수 선언

    - 정의되지 않은 함수를 호출하려면 함수 프로토타입을 선언해야 함

    Default Argument (기본 인수)

    - 기본 인수는 함수 선언 혹은 함수 프로토타입 선언시 한 번만 지정함.

    - 함수 프로토타입 선언에서 기본 인수를 지정했다면, 함수 본체를 정의할 때는 기본 인수를 지정할 수 없음.

    - 기본 인수는 오른쪽부터 정의해야 함

    void func(int a, int b, int c, int d = 2, int e = 10)

    함수 오버로드

    - 비슷한 함수 여러 개를 같은 이름으로 중복 정의(오버로드)해 두면, 그 이름과 일치하는 함수 중 인수의 형(type)과 개수가 일치하는 함수가 자동적으로 호출됨

    함수 템플릿

    template <class T>
    T maxt(T x, T y)
    {
      if (x > y)
        retun x;
      else
        return y;
    }

    - 다형성: 오버로드와 템플릿 처럼 하나의 이름이 상황에 맞추어 다른 기능을 가지는 것 

     

    Lesson 8 (포인터)

    포인터의 원리

    - 포인터: 주소를 저장하는 특수한 변수

    int a;
    int* pA;
    
    a = 5;
    pA = &a;

    - 간접참조연산자: 포인터를 통해 변수의 값 역추적

    *pA

    레퍼런스

    int a;
    int& rA = a;

    - 레퍼런스의 주소는 변수의 주소와 같음

     

    Lesson 9 (배열)

    배열과 포인터의 관계

    - 배열명은 배열 첫 번째 요소의 주소를 저장하는 포인터와 같은 기능을 함

    - 배열 첫 번째 요소의 주소: test = &test[0]

    - 배열 첫 번째 요소의 값: *test = test[0]

    - 배열명에 다른 주소를 대입하는 것은 불가능

    문자열과 배열

    - 문자열 마지막에는 '\0' (Null character)가 들어감

    - ""를 사용한 문자열 저장은 초기화시킬 때만 사용 가능

    char str[6] = "Hello";
    // str = "Hi";

    표준 라이브러리 함수

    #include <csting>

     

    728x90

    '유물 > C, C++' 카테고리의 다른 글

    <C++> C++ 입문 Day2  (0) 2021.11.16
    <C++> C++ 입문  (0) 2021.11.16
    <C언어> 자료형, 문자열  (0) 2021.11.08
And bytes to code before I sleep.