c++从类头文件中访问全局整数
C++ access global integer from class header file
我有一个声明类的头文件,我希望这个类访问一个在主cpp c++文件中声明的整数(即另一个文件,而不是类的一个)。我一直在谷歌上搜索,没有找到任何相关信息。我该怎么做呢?
若要在多个源文件之间共享全局变量,请使用extern
关键字。
main.cpp
#include "foo.h"
int global_var=0;
int main()
{
foo();
return 0;
}
foo。
#ifndef FOO_H
#define FOO_H
extern int global_var;
void foo();
#endif
foo.cpp
#include "foo.h"
int foo()
{
global_var=1;
}
将main.cpp中的整数移动到函数中,使其静态,让函数返回对它的引用,并将函数放入其自己的头文件中,该类头文件(或实现文件,如果合适)包含该头文件。
integer.h:
#ifndef INTEGER_H // use some better, longer name here
#define INTEGER_H
int &Integer();
#endif
integer.cpp:
#include "integer.h"
int &Integer()
{
static int i = 0;
return i;
}
像这样访问整数:
int x = Integer(); // copy
Integer() = 123; // assign
相关文章:
- 如何使用 c++ 中的函数访问全局变量?
- 如何全局创建对象并使用该对象访问全局范围内的公共成员函数
- 访问全局数据结构
- 访问全局或静态对象的分离线程
- 可以静态访问全局静态变量的静态函数
- C++中是否可以通过非模板函数访问全局模板变量
- 如何在可执行文件中从.so访问全局变量
- C++:为什么与访问全局变量相比,访问类数据成员如此缓慢
- C++ 如何从全局对象中的成员对象访问全局对象
- 访问全局静态变量
- C++-访问全局变量对象
- 访问全局变量以修改值
- 如何访问全局类实例
- 使用PThreads访问全局列表-指针问题
- 如何从另一个.cpp文件访问全局结构
- 无法从 Visual C++ 窗体应用程序中的窗体访问全局变量
- 访问全局数组比作为参数传递更有效
- 声明和访问全局对象
- c++从类头文件中访问全局整数
- 类不能访问全局对象