對於那些已經閱讀並完成stroustrup的「編程原理和使用C++實踐」的練習,我在做第8章練習的第一部分時遇到了困難。這個部分的主要問題是在問題結束時,它指出「在Windows上,您需要在項目中同時使用use.cpp和my.cpp並使用{char cc; cin> > cc;} in use.cpp能夠看到您的輸出。「如果我們不允許std_lib_facilities.h對於use.cpp我們該如何做到這一點?
當它說「在Windows上,您需要在項目中同時使用use.cpp和my.cpp」時,它究竟意味着什麼?如果我正在深入研究這件事,請告訴我。stroustrup ppp第8章鑽頭
創建三個文件:my.h,my.cpp,並use.cpp。頭文件my.h包含
的extern INT FOO;
void print_foo();
void print(int);的源代碼文件my.cpp其中的#include my.h和std_lib_facilities.h限定print_foo()打印使用COUT foo的的值,和打印(int i)以要打印的使用COUT我的值。
的源代碼文件use.cpp即會的#includemy.h限定主()設置foo的值設置到和使用print_foo其打印( ),並使用print()打印值99。請注意,use.cpp不會#includestd_lib_facilities.h,因爲它不直接使用任何這些設施。
獲得這些文件的編譯和運行。在Windows上,您需要在項目中同時使用use.cpp和my.cpp並使用{char cc; CIN >>立方厘米; } in use.cpp能夠看到您的輸出。
對我來說,它說''foo''的未定義引用。我正在使用C++ 14標準的g ++編譯器。它應該是這樣嗎? – 2017-05-02 14:42:11