c++ - 在多个函数中使用相同的变量

标签 c++ function variables

在我的代码中,出于效率考虑,我将一个长函数放在它自己的文件中(我们将其命名为a.cpp)。我还创建了第二个名为 b.cpp 的文件,其中包含另一个使用相同变量名称的函数。

我尝试为这些变量创建一个头文件,但没有成功。有没有办法做到这一点(除了将函数放在同一个文件中之外)?

一个简单的例子:

a.cpp

double s;

void a(){
  s = 1.0;
  printf("%f\n",s);
}

b.cpp

double s;

void b(){
  s = 2.0;
  printf("%f\n",s);
}

注意 这些文件中的每一个实际上都是 c,但整个程序是 c++。

最佳答案

在两者(或 header )中写入 extern double s;。这是一个声明,而不是定义。

然后在 一个 .cpp 文件中写入 double s; — 这是 double 对象的位置 body 上“活着”。

More here .

关于c++ - 在多个函数中使用相同的变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7070242/

相关文章:

c++ - 将字符串拆分为 vector C++

c++ - 为什么 shiboken2 会忽略 C++11 风格的回调?

javascript - 使用 javascript 隐藏数字,而不使用 jQuery

c++ - std::function 可以是类数据成员吗?

c++ - boost::property_tree 使用 C++

C++:如何从快捷方式打开 IShellFolder 驱动器文件夹

javascript 函数不工作但不显示任何错误

PHP/Session/IE : Constant are saved, 变量不存在

javascript - Var 和 JavaScript 变量作用域

java - 使 TextView 的按钮更改值