在VS代码中使用全局变量时出现“未定义引用”错误

时间:2019-05-06 05:11:13

标签: c++ visual-studio-code

我正在使用Bjarne的书来学习C ++,一切都很好,直到我学会了如何包含头文件为止。

我的代码如下:

my.h

#ifndef MY_H
#define MY_H

extern int foo;
void print_foo();

#endif

my.cpp

#include "my.h"
#include <iostream>

using namespace std;

void print_foo() {
    cout << foo << endl;
}

use.cpp

#include "my.h" 

int foo = 7;

int main() {
    print_foo();
}

我将它们放在相同的文件夹中,文件夹名称中没有空格,我从VS代码打开了一个新窗口,然后运行user.cpp并收到错误消息,指出未定义对print_foo的引用。

我是否错过了使用VS代码的一些关键步骤?因为我认为代码是正确的。

1 个答案:

答案 0 :(得分:2)

g++ my.cpp use.cpp -o main

在终端中使用此