C++ Chapter 0 : 시작해봅시다.

Date:     Updated:

카테고리:

태그:

인프런에 있는 홍정모 교수님의 홍정모의 따라 하며 배우는 C++ 강의를 듣고 정리한 필기입니다. 😀
🌜 [홍정모의 따라 하며 배우는 C++]강의 들으러 가기!


0.0 C++ 꼭 공부해야 할까?

공부 방법

  1. 예제를 많이 베끼며 연습해라
    • 좋은 예술가는 베낀다
    • 위대한 예술가는 훔친다
  2. 올바른 타이핑 방법을 연습한다.
  3. 간단한 개념을 이해한다.
  4. 예제를 따라해본다.
  5. 문제가 생기면 해결한다.
  6. 예제를 내 맘대로 바꿔본다.


0.1 프로그래밍 언어란

종류

  • C, C++, Java
    • 코드 → 컴파일러(기계어로변환) → 실행파일 → CPU,메모리로 실행결과 내기
  • Python, JavaScript
    • 코드 → 인터프리터 → CPU,메모리로 실행결과 내기
    • 인터프리터를 사용함으로써 실행 파일 안만들고 바로 바로 한줄마다 CPU로 돌림
    • 대신 컴파일러 쓰는 언어에 비해 느리다.

이식성 Portability

  • 이식성이 없는 언어라면
    • 플랫폼마다 컴파일러가 추가적으로 더 필요하다
      • ex) 윈도우용컴파일러, 리눅스용컴파일러, 윈도우용실행파일, 리눅스용실행파일
  • 이식성이 있는 언어라면
    • ex) Java
    • 컴파일러는 1개만 있으면 어느 플랫폼에서든 쓸 수 있음.
    • 컴파일러가 바이트코드를 생성
    • 플랫폼마다 가상 기계가 있어야한다.
      • 윈도우 가상기계, 리눅스 가상기계
      • 각 가상 기계가 이 바이트 코드를 돌려 실행 결과를 만들어낸다.


0.2 C/C++ 언어 소개

C, C++의 철학

  • C++은 C에서 객체지향 개념이 추가된 것
  • 프로그램의 자율성이 높다.
  • 실제 세계에서 쓸모가 있어야 한다.
  • 프로그래머가 스스로 스타일을 선택할 수 있어야 한다.
  • 유용한 기능을 추가하는 것이 오용보다 중요하다.
  • 프로그래머의 의도를 알 수 없다면 스스로 명시하게 한다.
  • C++아래에 다른 언어는 없다, (어셈블리어는 예외)


0.3 프로그래밍 과정 소개

  1. 풀어야 할 문제를 정의한다.
  2. 해법을 설계한다.
  3. 해법을 구현하는 프로그램을 작성한다.
  4. 프로그램을 컴파일 한다.
    • 파일 1개 단위로 컴파일해서 각각 obj 오브젝트 파일을 따로 만든다.
  5. obj 오브젝트 파일들을 링킹한다.
    • obj파일들을 링킹하여 하나의 실행파일로 만든다.
    • include한다른 외부 라이브러리들것도 합침
  6. 디버깅한다.
    • 테스트 해보고 문제가 있으면 고친다.


0.4 통합개발환경 IDE의 기본적인 사용법

😀 Windows Visual Studio 기준
  • 옵션 - 국가별 설정 에서 언어를 바꿀 수 있다.
    • 영어판 사용 추천!
      • 오류메세지 검색하기 좋다
  • 코드파일 in 프로젝트 in 솔루션
  • 빌드 : 실행파일을 만드는 과정
  • 솔루션 정리 : 빌드한 것 삭제
    • obj, exe 파일들 삭제
  • 모드 종류
    • 디버그 모드 : 디버그를 도와주는 것들끼리 같이 저장되어 있어 용량이 매우 크고 느림
    • 릴리즈 모드 : 딱 최소한으로 사용자들이 쓰도록 하는 용도의 실행파일! 빠르고 용량 작다.
      • 배포 용은 릴리즈 모드
    • x86 → 32bit / x64 → 64bit
  • cd) 비쥬얼 스튜디오 말고 다른 IDE 중에 코드 블럭스 라는 것도 있다!

비쥬얼 스튜디오 솔루션, 프로젝트 관리

- 1개의 솔루션
    - 프로젝트1
        - main.cpp
        - kgkg.h
        - kgkg.cpp
    - 프로젝트2
        - hello.h
        - hello.cpp
        - gogo.cpp
  • 각 프로젝트마다 언어가 달라도 된다.
  • 프로젝트 별 exe 실행 파일들은 솔루션 밑에 Debug 폴더에 모여있다.
  • 우클로 시작 프로젝트를 바꿀수 있다.
    • 굵은 글씨로 되있는게 현재 이 솔루션의 시작프로젝트
    • 빌드하면 시작 프로젝트가 실행되기 때문에 다른 프로젝트로 바꾸려면 시작 프로젝트 바꿔줘야 함
  • 솔루션을 빌드하면 그 안에 있는 프로젝트들도 싹 다 빌드된다.

0.5 코딩하다 막혔을 때는?

  1. 당황X 분노X
    • 잘 안풀리는 상황이 날 발전시키는 상황이라고 생각하자.
  2. IDE의 오류 메세지를 잘 읽어본다
  3. 검색 엔진의 도움을 받는다. 구글링 !
  4. 커뮤니티의 도움을 받는다.


🌜 개인 공부 기록용 블로그입니다. 오류나 틀린 부분이 있을 경우 
언제든지 댓글 혹은 메일로 지적해주시면 감사하겠습니다! 😄

맨 위로 이동하기

Cpp 카테고리 내 다른 글 보러가기

댓글 남기기