본문 바로가기
TIL

WIL (22.2.20)

by imagineer_jinny 2022. 2. 22.

WIL (Weekly I Learned)

 

이번주에 배운 것

    • 전처리기: 컴파일 하기 전에 텍스트를 '복붙'해주는 일을 함
    • 생성자 : 개체 처음 만들어질 때 호출되는 함수
    • 컴퓨터의 메모리 기본 구조
      • CPU는 메모리와 함께 일을 한다. 연산은 CPU, 저장은 메모리
      • 메모리에서 CPU로 자주 보내는 것은 중간 캐쉬 메모리에 저장해 계산 속도를 높인다
      • 임의접근 vs 순차접근
        • 임의 접근 : RAM
        • 주소를 통해 원하는 데이터에 찾아감
        • 순차접근: 순서대로 다 뒤지는 것
    • 초기화 리스트(Initializer List)
      • : 찍으면 초기화 리스트 시작한다는 것
      • 기본적으로 초기화리스트 해줄 수 있는 것들은 해주는 것이 좋다
    • 기본 생성자
      • 기본 생성자는 매개변수를 받지 않음
      • 클래스에 생성자가 없으면 컴파일러가 기본 생성자를 자동적으로 만들어줌
    • 오버로딩 vs 오버라이딩
      • 오버로딩은 함수 중복 정의. 같은 이름의 함수에 매개변수를 다르게 사용하여 매개변수에 따라 다른 함수가 실행되는 것
      • 오버라이딩은 함수 재정의. 상속 받았을 때 부모 클래스의 함수를 사용하지 않고 다른 기능을 실행할 때 함수를 자식 클래스에 같은 이름, 매개변수로 재정의 해서 사용
    • 소멸자: 객체가 지워질 때 호출
    • const 멤버 함수: 멤버함수가 변하는 것을 방지
      • 기본적으로 모든 함수는 const로 짜는게 맞고 멤버 함수 내에서 객체를 바꿀 때 그게 정말 필요하다면 const를 빼는게 맞음. 그래야 협업할 때 실수를 덜 함.
    • 구조체 vs 클래스
      • struct : 기본 public, class: 기본 private
    • 구조체에 관한 코딩 표준
      • struct는 순수하게 데이터 뿐이여야 함. Plain Old Data, POD / ex. int, float 등
    • const_cast, static_cast, dynamic_cast, reinterpret_cast
    • RTTI
    • friend 클래스, friend 함수
    • 프로그래머스 lv1
      • 체육복 -  카운팅을 하고 싶을 때 다른 배열을 하나 만들어서 사용했는데 더 효율적인 방법이 있을 것 같다
      • 완주하지 못한 선수 - sort를 이용하여 정렬할 생각을 못했음. 나중에 다시 풀어보자!
        • 번호 말고 다른 것(예: 문자열)로 접근할 수 있는 자료구조?
        • 해시(Hash)
        • C++의 STL에서는 hash table을 제공함
        • std::map vs std::unordered_map

map은 key의 순서에 따라 접근하는 것이 가능. 그러나 순서를 늘 유지해야 하기 때문에 원소의 삽입, 삭제, 검색 등의 hash table이 가지고 있는 상수 시간 접근이 불가능

 

          • 3진법 뒤집기 - while문 안에 n을 3으로 나눈 나머지 구할 때 n을 다시 재정의 (n/=3) 해줘야하는데 이걸 자꾸 까먹음. while문 안에 조건문, 재정의 잘 해주기!
          • 2016년 - 24일은 5월 1일로부터 23일 지난 후이므로, 1을 빼주어야한다. 예를 들어 1월 2일의 경우, 2일이 지난것이아니라, 1일이 지난것이므로 1로 쳐주어야한다.
            출처: https://beginnerdeveloper-lit.tistory.com/24 [초보 개발자의 이야기, 릿허브]

차주에 진행할 것

  • C++ ~5주차까지 : 개체지향 프로그래밍 + 정적(static) 멤버 함수/변수 까지
  • C ~3주차까지 : 포인터배열까지 
  • Effective C++: ~Chapter 2
  • VR Project 출시 준비
  • 프로그래머스 lv1 마무리

 

 

앞으로 진행할 것

  • 프로그래밍 면접 이렇게 준비한다
  • 트러블 슈팅 경험 정리
  • 우아한 Tech - [10분 테코톡] 한주에 하나씩
  • 게임 프로그래밍 패턴
  • 선형대수학 개론 
 

'TIL' 카테고리의 다른 글

WIL (22.03.06)  (0) 2022.03.07
WIL (22.02.27)  (0) 2022.02.28
WIL (22.02.13)  (0) 2022.02.14
WIL (22.02.06)  (0) 2022.02.06
WIL (22.1.30)  (0) 2022.01.31

댓글