ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 따배씨++ 시작
    C++일기 2021. 4. 30. 02:07

    공부이유)

    ROS를 다루면서도 C++이 소스코드로 필요했다.

    C++을 익힌 뒤 어떠한 언어에도 쉽게 접근이 가능하다.

    Python도 내부적으로 c++로 돌아간다.

    데이터가 사람을 대신해 일하게 하기 위해서

     

    공부방법)

    좋은 예술가는 따라하고

    위대한 예술가는 훔친다

    처음은 따라하는 것부터 시작하자.

     

    첫 시작에서 틀을 이해하는 것이 중요하다. 이번 글 이후로는 기록하기 보다는 빠르게 수업을 듣고 예제를 하는 것에 집중할 계획이다.

     

    이번 글에서는 IDE환경에서 코드를 WRITE하고 COMPILE했을 때 어디에 어떻게 파일들이 만들어지고 어떻게 실행되는지 정리하였다.

     

    자료출처

    www.youtube.com/playlist?list=PLNfg4W25Tapw5Yx4yuExHNybBIUk68aNz


     

    강의0.1 컴파일러와 인터프리터

    -컴파일러(대표적인 컴파일언어 : C/C++)

    코드 - 컴파일러 - 실행파일(.exe) - 중앙처리장치 CPU - 실행결과

    컴파일러는 우리가 작성한 소스코드를 CPU가 실행할 수 있는 실행파일로 바꾸어 준다. 이 실행파일은 하드디스크에 저장되는데 저장된 파일을 그때그때 꺼내 써서 속도가 빠르다.

     

    -인터프리터(대표적 인터프리터언어 : Python)

    스크립트(=코드) - 인터프리터 - CPU - 실행결과

    특징 : 실행파일이 생성되지 않는다.

     

    ??? : 실행파일을 만들지 않으니, 인터프리터언어가 더 빠르지 않나요??

    동일한 코드를 반복실행할 때, 실행파일이 없다면 여러번 인터프리터를 거쳐야하므로 오히려 속도가 더 느리다.

     

    강의0.3 프로그래밍 과정

    1단계 문제정의

    2단계 해법설계

    3단계 해법을 구현하는 프로그램 write

    4단계 프로그램 compile

    5단계 object파일들을 linking한다

    6단계 테스트 후 문제가 있다면 debuging

     

    * 하나의 소스코드를 compile하면 하나의 object파일을 만든다.

    * 분업을 통해 만든 object파일들과 Opensource들을 linking할 수 있다. 적절한 Opencsource를 활용하는 것도 중요한 역량이다.

     

    강의 0.4.0 Hellow World!

    간단한 프로그램 만들어보고 실제로 어떤 과정을 거쳐서 출력되는지 파악

    그럼처럼 파일이 저장된 파일을 열 수 있다.

    파일구성

    solution파일 - project파일 - source.cpp

    하나의 solution파일에 여러개의 project파일을 가질 수 있다. proj1은 cpp로, proj2는 python으로 만들어 쓸 수도 있다.

    compile하는 것은 실제로 proj파일 안의 source.cpp이고 그 결과 실행파일(.exe)이 solution파일 차원의 debug파일 내에 존재한다.

    IDE에서 compile하고 실행까지 할 수 있지만 cmd창에서 실행파일의 경로로 들어가 실행파일을 실행할 수도 있다. 이것이 좀더 근본적으로 실행파일이 실행되는 원리이다.

    하나의 solution파일 아래에서 여러개의 project파일을 추가할 수 있고 어떤 build 후 생성된 각각의 실행파일들 중에서 어느 실행파일을 실행시킬지는 project파일에서 우클릭에서 set as startup project를 클릭하면 해당 project의 실행파일이 실행된다.

    *source.cpp에서 모든 project파일의 소스코드 이름이 같으면 헷갈릴 수 있다. 적절한 이름으로 바꾸어 만들자.

     

    debug build와 release build

    debug build를 했을 때 만들어지는 실행파일과 release build를 했을 때 만들어지는 실행파일은 다르다. 

    release가 실사용자들에게 배포용으로 만들어지는 것으로 용량이 상대적으로 많이 작다.

     

     

     

     

     

    728x90
    반응형

    댓글 0

Designed by Tistory.