error LNK2001: 无法解析的外部符号 public: static int Pe...
2019独角兽企业重金招聘Python工程师标准>>>
error LNK2001: 无法解析的外部符号 "public: static int Person::b"
今天练习类的编程时遇到的问题,源自静态变量的初始化问题。
下面是对static的一点讲解
===============================================
静态数据成员的使用方法和注意事项如下:
1、静态数据成员在定义或说明时前面加关键字static。
2、静态成员初始化与一般数据成员初始化不同。静态数据成员初始化的格式如下:
<数据类型><类名>::<静态数据成员名>=<值>
这表明:
(1) 初始化在类体外进行,而前面不加static,以免与一般静态变量或对象相混淆。
(2) 初始化时不加该成员的访问权限控制符private,public等。
(3) 初始化时使用作用域运算符来标明它所属类,因此,静态数据成员是类的成员,而不是对象的成员。
3、静态数据成员是静态存储的,它是静态生存期,必须对它进行初始化。
4、引用静态数据成员时,采用如下格式:
<类名>::<静态成员名>
如果静态数据成员的访问权限允许的话(即public的成员),可在程序中,按上述格式来引用静态数据成员。
exp:
class aclass{
public:
static int a;
};
static int aclass::a=0; //初始化
void main()
{
int amain=0;
amain=aclass::a; //使用,无需定义相关类的变量而直接使用之。
}
对于 静态常量整型 可以在类中初始化,另外对于常量则必须在构造函数成员初始式列表里初始化。
#include <iostream>
using namespace std;
class Person
{
public:
const int a ;
static const int b = 2 ; // 对 静态-常量整型 初始化
Person(int aa):a(aa) // 这里必须对常量a初始化,也只能这样初始化。
{}
};
int main()
{
cout << Person::b << endl;
Person p(9);
cout << p.a << endl ;
return 0;
}
转载于:https://my.oschina.net/ypimgt/blog/89138
error LNK2001: 无法解析的外部符号 public: static int Pe...相关推荐
- ProjectWin.obj:-1: error: LNK2001: 无法解析的外部符号 “private: static class ProjectWin * ProjectWin::m_pInst
Qt系列文章目录 文章目录 Qt系列文章目录 前言 一.单例模式是什么? 二.使用步骤 1.懒汉模式 2.带界面的单例 2.饿汉模式 总结 前言 今天写了一个单例模式,报错如下 ProjectWin. ...
- error LNK2019: 无法解析的外部符号 public: virtual void * __thiscall
vs2010,qt5.7 error LNK2001: 无法解析的外部符号 "public: virtual void * __thiscall MyThread::qt_metacast( ...
- c语言declspec,c++ error LNK2001: 无法解析的外部符号 __declspec(dllimport)
各位高手,我下面附件中的程序msh2mlab.cpp在vs2008组建时出现了下了错误,有没有什么解决方案? >msh2mlab.obj : error LNK2001: 无法解析的外部符号 & ...
- c++ error LNK2001: 无法解析的外部符号
error LNK2001: 无法解析的外部符号 一.问题现象 二.解决方法 三.问题分析 四.问题总结 一.问题现象 error LNK2001:无法解析的外部符号 xxxxxx 二.解决方法 删除 ...
- Error LNK2001 无法解析的外部符号 的几种情况及解决办法
Error LNK2001 无法解析的外部符号 的几种情况及解决办法 多线程下的单例模式 这里要处理的是懒汉模式. [cpp] view plain copy class Singleton { p ...
- VS2012编译文件报错——error LNK2001: 无法解析的外部符号 __imp___CrtDbgReportW
错入显示如: 1> 正在生成代码... 1>SurfDescriptor.obj : error LNK2001: 无法解析的外部符号 __imp___CrtDbgReportW 1&g ...
- error LNK2001: 无法解析的外部符号 “void __cdecl cv::cvtColor
c++调用opencv时报错了, error LNK2001: 无法解析的外部符号 "void __cdecl cv::cvtColor 现在发现有两个可能的原因: 原因1: 没有添加lib ...
- c++中调用python脚本提示 error LNK2001: 无法解析的外部符号 __imp_Py_Initialize等错误的解决方法
c++中调用python脚本提示 error LNK2001: 无法解析的外部符号 __imp_Py_Initialize等错误的解决方法 时间:2017-05-09 12:32:06阅读:234评论 ...
- error LNK2001: 无法解析的外部符号 __imp__Shell_NotifyIconA@8
编译链接报错 error LNK2001: 无法解析的外部符号 __imp__Shell_NotifyIconA@8 解决方案: 在代码中添加链接库Shell32.lib #pragma commen ...
最新文章
- 2018年自媒体人的出路在哪?
- .net源代码已经可以调试
- Lotus Domino单用户多账号多邮件地址配置
- 乘法器的verilog实现(并行、移位相加、查找表)
- HDU1166 敌兵布阵 单点更新 区间查询
- Android子线程真的不能更新UI么
- cs架构用什么语言开发_用Rust语言开发微信小程序
- 数据结构之线性表-链式存储之单链表(一)
- 【安全】Docker安装LDAP
- lambda List实现某列去重的解决方案采用扩展方法
- 酷开网络首推“无界空间”,酷开系统8正式发布!
- 与计算机运算速度相关参数,计算机CPU运算速度是多少
- 2021最新抖音H5电玩城游戏平台多玩法模式全套源码
- jdk和jre有什么区别?
- Flutter 底部导航栏实现方式
- 颈椎病的康复锻炼方法
- 读书笔记:《谁说菜鸟不会数据分析-入门篇》第1-4章
- 【进阶C语言】五人赛跑的真实排名
- php时间戳转换成时间的方法
- java计算机毕业设计病人跟踪治疗信息管理系统演示2021源码+数据库+系统+lw文档+部署