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...相关推荐

  1. ProjectWin.obj:-1: error: LNK2001: 无法解析的外部符号 “private: static class ProjectWin * ProjectWin::m_pInst

    Qt系列文章目录 文章目录 Qt系列文章目录 前言 一.单例模式是什么? 二.使用步骤 1.懒汉模式 2.带界面的单例 2.饿汉模式 总结 前言 今天写了一个单例模式,报错如下 ProjectWin. ...

  2. error LNK2019: 无法解析的外部符号 public: virtual void * __thiscall

    vs2010,qt5.7 error LNK2001: 无法解析的外部符号 "public: virtual void * __thiscall MyThread::qt_metacast( ...

  3. c语言declspec,c++ error LNK2001: 无法解析的外部符号 __declspec(dllimport)

    各位高手,我下面附件中的程序msh2mlab.cpp在vs2008组建时出现了下了错误,有没有什么解决方案? >msh2mlab.obj : error LNK2001: 无法解析的外部符号 & ...

  4. c++ error LNK2001: 无法解析的外部符号

    error LNK2001: 无法解析的外部符号 一.问题现象 二.解决方法 三.问题分析 四.问题总结 一.问题现象 error LNK2001:无法解析的外部符号 xxxxxx 二.解决方法 删除 ...

  5. Error LNK2001 无法解析的外部符号 的几种情况及解决办法

    Error LNK2001 无法解析的外部符号 的几种情况及解决办法 多线程下的单例模式 这里要处理的是懒汉模式. [cpp] view plain copy  class Singleton { p ...

  6. VS2012编译文件报错——error LNK2001: 无法解析的外部符号 __imp___CrtDbgReportW

    错入显示如: 1>  正在生成代码... 1>SurfDescriptor.obj : error LNK2001: 无法解析的外部符号 __imp___CrtDbgReportW 1&g ...

  7. error LNK2001: 无法解析的外部符号 “void __cdecl cv::cvtColor

    c++调用opencv时报错了, error LNK2001: 无法解析的外部符号 "void __cdecl cv::cvtColor 现在发现有两个可能的原因: 原因1: 没有添加lib ...

  8. c++中调用python脚本提示 error LNK2001: 无法解析的外部符号 __imp_Py_Initialize等错误的解决方法

    c++中调用python脚本提示 error LNK2001: 无法解析的外部符号 __imp_Py_Initialize等错误的解决方法 时间:2017-05-09 12:32:06阅读:234评论 ...

  9. error LNK2001: 无法解析的外部符号 __imp__Shell_NotifyIconA@8

    编译链接报错 error LNK2001: 无法解析的外部符号 __imp__Shell_NotifyIconA@8 解决方案: 在代码中添加链接库Shell32.lib #pragma commen ...

最新文章

  1. 2018年自媒体人的出路在哪?
  2. .net源代码已经可以调试
  3. Lotus Domino单用户多账号多邮件地址配置
  4. 乘法器的verilog实现(并行、移位相加、查找表)
  5. HDU1166 敌兵布阵 单点更新 区间查询
  6. Android子线程真的不能更新UI么
  7. cs架构用什么语言开发_用Rust语言开发微信小程序
  8. 数据结构之线性表-链式存储之单链表(一)
  9. 【安全】Docker安装LDAP
  10. lambda List实现某列去重的解决方案采用扩展方法
  11. 酷开网络首推“无界空间”,酷开系统8正式发布!
  12. 与计算机运算速度相关参数,计算机CPU运算速度是多少
  13. 2021最新抖音H5电玩城游戏平台多玩法模式全套源码
  14. jdk和jre有什么区别?
  15. Flutter 底部导航栏实现方式
  16. 颈椎病的康复锻炼方法
  17. 读书笔记:《谁说菜鸟不会数据分析-入门篇》第1-4章
  18. 【进阶C语言】五人赛跑的真实排名
  19. php时间戳转换成时间的方法
  20. java计算机毕业设计病人跟踪治疗信息管理系统演示2021源码+数据库+系统+lw文档+部署

热门文章

  1. AJPFX关于Set接口学习笔记及总结
  2. Android零基础入门第30节:两分钟掌握FrameLayout帧布局
  3. 快意报表存储过程标准写法
  4. ZooKeeper场景实践:(6)集群监控和Master选举
  5. Javascript类的写法
  6. Mansory算法分析
  7. [Err] 1449 - The user specified as a definer ('admin_isbox'@'localhost') does not exist
  8. 使用TensorRT加速yolo3
  9. 10分钟快速构建汽车零售看板
  10. tornado(七)