좋은 강의 감사히 들었습니다! 08:47 부분에 'header file이 있으니 독립적인 Build porcess를 만들수 있다.'라고 말씀하셨는데 이 말씀의 의미를 잘 모르겠습니다. 결국은 build process과정에서 cat.o를 link해야하는데 어떤의미에서 독립적인 것인지 가르쳐주실 수 있나요?? header파일 덕분에 main.cpp에 'cat.cpp에 있는 클래스의 선언부분'을 작성할 필요가 없어졌으니 코드 작성시 cat.cpp파일로 부터 독립적이라는 의미인건가요?
네 정확합니다. cpp프로젝트의 build process는 cpp 파일 별로 object file을 만드는 것입니다. 이때 컴파일 하고자 하는 파일 밖의 다른 정보를 include하고 싶은경우 cpp나 object파일이 아닌 header 파일만 가지고있으면 cpp프로젝트는 빌드가 가능합니다. cpp 파일 각자 독립적으로 빌드가 가능한 것이죠.
모던 C++ 강의 잘 보고 있습니다. a.h 에 함수를 선언하고 a.cpp에 함수를 정의하고 이를 컴파일하여 a.o 파일을 만드는 것으로 이해했습니다. 이와 같이 생각하면 눈에 보이지는 않지만 ,같은 헤더 파일에 std:cout 함수가 선언되어있고 iostream.cpp 파일에 std::cout 함수가 정의되어 있고 이를 컴파일하면 iostream.o 파일이 만들어지고 링커가 iostream.o 파일도 같이 묶어주어서 실행파일을 만드는 건가요?
진짜 기본중의 기본인데 설명 잘해주셔서 감사합니다
감사합니다
감사합니다! 잘 보고 있습니다
와 진짜 저 비전공자인데도 너무 알아듣기 편합니다! 감사합니다
다시처음부터 보고있는데 다른 영상을 보고 오지않은 분들을 위해 다른 영상에서 설명했던 내용들은
해당 부분에서 영상링크가 올라오면 좋을거같아요 예: 4분20초 부분에서 다른강의를언급할때 링크가올라오면 좋을거같습니다
소중한 의견 감사드립니다. 영상에 카드링크 추가하였습니다. 감사합니다.
좋은 강의 감사히 들었습니다!
08:47 부분에 'header file이 있으니 독립적인 Build porcess를 만들수 있다.'라고 말씀하셨는데 이 말씀의 의미를 잘 모르겠습니다. 결국은 build process과정에서 cat.o를 link해야하는데 어떤의미에서 독립적인 것인지 가르쳐주실 수 있나요?? header파일 덕분에 main.cpp에 'cat.cpp에 있는 클래스의 선언부분'을 작성할 필요가 없어졌으니 코드 작성시 cat.cpp파일로 부터 독립적이라는 의미인건가요?
네 정확합니다. cpp프로젝트의 build process는 cpp 파일 별로 object file을 만드는 것입니다. 이때 컴파일 하고자 하는 파일 밖의 다른 정보를 include하고 싶은경우 cpp나 object파일이 아닌 header 파일만 가지고있으면 cpp프로젝트는 빌드가 가능합니다. cpp 파일 각자 독립적으로 빌드가 가능한 것이죠.
@@코드없는프로그래밍 감사합니다!
모던 C++ 강의 잘 보고 있습니다.
a.h 에 함수를 선언하고 a.cpp에 함수를 정의하고 이를 컴파일하여 a.o 파일을 만드는 것으로 이해했습니다.
이와 같이 생각하면 눈에 보이지는 않지만 ,같은 헤더 파일에 std:cout 함수가 선언되어있고 iostream.cpp 파일에 std::cout 함수가 정의되어 있고 이를 컴파일하면 iostream.o 파일이 만들어지고 링커가 iostream.o 파일도 같이 묶어주어서 실행파일을 만드는 건가요?
standard library같은경우는 이미 binary화 되어있는경우가 많습니다. template을 사용한 header only case가 아닌경우에는 이미 컴파일 되어있는 .lib, .a와 링크 합니다.
@@코드없는프로그래밍 감사합니다!
전방선언을 하면 cpp로도 구현이 가능한 것인가요?
미리 정의된 심볼이다라는 오류가 발생할 가능성이 있는건이지요?
네 definition이 같은 compile file단계에서 겹치면 컴파일 오류가 발생할수있습니다.
또 여러 object file에서 definition이 겹치면 link단계에서도 오류가 발생할 수 있습니다.
전방선언을 하면 cpp로도 구현이 가능한 것인가요?
@@코드없는프로그래밍 헤더 파일의 역할이 결국 전방선언을 하나의 파일에서 대체할 수 있다는 점으로 알고 있는데, 그러면 cpp 파일만으로 사용하는 함수에 대해서 전방선언을 한다면 사실 .h 없이도 코딩이 가능한 것인지 궁금해서요
@@유영재-c9c 네 가능합니다. 문제는 다른 cpp파일에서 h와 cpp가 통합된 cpp파일을 include하게되면 두개의 다른 cpp파일은 컴파일이 되지만 definition이 겹치면서 link error가 날 겁니다.
기본중의 기본도 이해가 안되면 접어야겠죠??
Python부터 하셔도 됩니다. C++은 어려워요 ㅠㅠ