使用静态变量未解析的外部
unresolved external with static variables
>我有一个名为Pub的类,它具有以下标头:
#pragma once
class Pub
{
public:
static double X_FACTOR;
static double Y_FACTOR;
static const int INIT_SCREEN_WIDTH=500;
static const int INIT_SCREEN_HEIGHT=550;
Pub(void);
~Pub(void);
};
我正在尝试在main.cpp中设置变量Y_FACTOR
,如下所示:Pub::Y_FACTOR=1.0;
是的,Pub.h 正确包含在内,可以演示,因为我可以访问INIT_SCREEN_WIDTH和INIT_SCREEN_HEIGHT但是,当我这样做时,我收到以下错误:
错误我6 错误 LNK2001:未解析的外部符号"公共:静态 双人酒吧::Y_FACTOR" (?Y_FACTOR@Pub@@2NA) C:\Users\Pedro-Estevan-Juarez\Documents\Visual Studio 2012\项目\项目2\项目2\main.obj 项目2 错误 7 错误 LNK1120:1 个未解析的外部 C:\Users\Pedro-Estevan-Juarez\Documents\Visual Studio 2012\Projects\Project2\Debug\Project2.exe 1 Project 2
怀疑这是语法明智的,有人可以帮我吗?
类定义中的代码只是一个声明。您需要在 cpp 文件中添加静态变量的定义。在使用它的任何函数之前,将其添加到 cpp 文件和文件范围中。
double Pub::Y_FACTOR;
相关文章:
- 类内部和外部静态 constexpr 元组之间的差异
- Visual Studio 中静态库项目之间的未解析外部
- 仅在少数方法(静态或共享库)中解析的外部符号
- 用作默认参数的静态成员会导致无法解析的外部
- 使用静态 constexpr 成员的未解析外部符号
- 内联asm编译器屏障(内存阻塞器)是算作外部函数,还是算作静态函数调用
- CMake 外部和内部静态库的循环依赖关系
- Windows C++静态库在初始化期间无法访问外部方法
- 作为成员的静态类模板实例会导致未解析的外部符号错误
- CURL 静态链接未解析的外部符号
- Android:在Android Studio中链接外部静态C/C++库
- 为什么局部类定义可以从同一函数访问外部静态变量
- Qt5 未解析的外部静态元对象函数
- 外部静态库
- 从外部静态库访问函数
- 链接Qt创建者中的外部静态库
- 来自另一个DLL的未解析的外部静态数据成员
- 链接现成的外部静态库
- 外部"C"静态空隙*功能
- 函数内部和外部静态变量的区别