一、代码

main.cpp,使用自定义的库 support.h 调用的是 sum函数

  1. #include <iostream>
  2. #include <vector>
  3. #include <string>
  4. #include "support.h"
  5. using namespace std;
  6. int main()
  7. {
  8. vector<string> msg {"Hello", "C++", "World", "from", "VS Code", "and the C++ extension!"};
  9. for (const string& word : msg)
  10. {
  11. cout << word << " ";
  12. }
  13. int t = sum();
  14. cout << t << endl;
  15. }

support.cpp

  1. int sum(){
  2. int i = 0;
  3. int j = 0;
  4. for(;j<100;j++)
  5. i+=j;
  6. return i;
  7. }

support.h

  1. int sum();

二、makefile文件

  1. CFLAGS := -std=c++11 -Wall
  2. # 最好使用 g++ clang++ 有点搞不懂
  3. # -g 表示生成debug文件
  4. CC := g++ -g
  5. output : main.o support.o
  6. $(CC) -g -o output main.o support.o
  7. main.o : main.cpp support.h
  8. $(CC) -c $(CFLAGS) main.cpp
  9. support.o : support.cpp support.h
  10. $(CC) -c $(CFLAGS) support.cpp
  11. clean :
  12. rm -rf *.o
  13. .PHONY: default

三、g++ 命令

  1. -g : 只是编译器,在编译的时候,产生调试信息。
  2. -c : 只编译并生成目标文件

image.png

参考

1、GCC参数:https://www.runoob.com/w3cnote/gcc-parameter-detail.html
2、Make 命令教程:https://www.ruanyifeng.com/blog/2015/02/make.html
3、C++头文件的使用:https://www.runoob.com/w3cnote/cpp-header.html