此文针对于初学者或者对这一部分掌握不太清楚的人。
首先静态成员函数的声明:

static void setName(QString name);

需要在函数的声明前加static关键字。
定义的时候和普通成员函数一样,不需要加static,但是静态成员函数只能访问静态成员变量和静态成源函数。

class demo{public:
demo();
~demo();
static void setName(QString name);
private:static QString m_name;QString lastName;
};

下面在类的声明中说明静态成员的一个重要特性,没有this指针,不能访问普通成员函数和变量。

QString  demo::m_name = "";//静态成员变量在类外定义
demo()
{}
~demo()
{}
void demo::setName(QString name)
{lastName = name;//错误,静态成员函数只能访问静态成员m_name = name;
}

对于静态成员函数,可以通过类名直接访问,经常使用的就是通过类名进行访问,非静态成员函数,需通过该类对象进行调用,在创建对象的时候,会默认传入一个this指针,该指针指向类的对象的地址,可通过this指针访问成员函数和变量,静态成员函数没有this指针,不能访问普通成员函数和变量。

静态成员函数与静态成员变量相关推荐

  1. c语言静态成员变量重名会怎么样,C++中静态成员函数与静态成员变量(static )...

    C++中静态成员函数与静态成员变量(static ) 这篇介绍了静态成员函数与静态成员变量,是我的读书笔记,我希望它够简短但又比较全面,起到复习的作用.如果有一些C++知识记不清楚了,它可以帮你很快回 ...

  2. 友元函数、类的非静态成员函数、静态成员函数的区别

    类中申明的函数相对于类来说有三层意思: 1.有this指针 2.函数在类的作用区域中 3.可以访问类中私有部分 4.可以被继承 非静态成员函数具有1234 静态成员函数具有234 友元函数具有3 静态 ...

  3. 类的静态成员函数和静态成员变量的使用

    当将类的某个数据成员声明为static时,该静态数据成员只能被定义一次,而且要被同类的所有对象共享.各个对象都拥有类中每一个普通数据成员的副本,但静态数据成员只有一个实例存在,与定义了多少类对象无关. ...

  4. 静态成员函数与成员变量_C++静态成员变量及函数

    没有很快乐,也没有不快乐,好像不该这样,但也只能这样,成长也许如此,行于奔溃边缘又慢慢自愈吧... ----  网易云热评 一.静态成员变量 1.普通成员变量属于对象,每个对象都会包含一份独立的普通成 ...

  5. C++静态成员函数与静态成员变量

    静态成员函数的作用 调用这个函数不会访问或者修改任何对象(非static)数据成员 不需要生成对象就能调用 原因: 类的静态成员(变量/方法)属于类本身,在类加载的时候就会分配内存,可以通过类名直接去 ...

  6. C++_类和对象_对象特性_成员变量占用对象内存_成员函数_静态成员函数_静态变量_都不占用对象内存_他们是分开存储的---C++语言工作笔记048

    然后我们来看c++中的,类的对象的大小,类中的成员变量和函数的存储问题. 首先我写个空类 然后在类外写个test01这个函数,然后 在main方法中调用这个test01这个函数

  7. 【C++基础学习】关于C++静态成员函数和变量

    代码一: class Point{ public:void output(){}static void init(){} }; int main() {Point pt;pt.init();pt.ou ...

  8. 13.C++-静态成员变量、静态成员函数

    首先回顾下成员变量 能通过对象名能够访问public成员变量 每个对象的成员变量都是专属的 成员变量不能在对象之间共享 再来讲讲类的静态成员变量 介绍 静态成员变量属于整个类所有 静态成员变量的生命期 ...

  9. C++的静态成员变量和静态成员函数

    C++的静态成员变量和静态成员函数 静态成员变量和静态成员函数算是C++面向对象编程中的一个重点和难点,这里的静态具体指什么呢?与普通的成员变量和成员函数相比,静态成员函数和静态成员变量是属于类的,而 ...

最新文章

  1. Hive的Security配置
  2. php 自带sql防注入函数,php 最简单sql防注入函数与方法_PHP教程
  3. flask 操作mysql的两种方式-sqlalchemy操作
  4. 聊一聊Jmeter的参数化
  5. 岁月悄然前行,没有停留的痕迹
  6. 【转】ABP源码分析四十一:ZERO的Audit,Setting,Background Job
  7. 08_JS工厂方法和构造函数
  8. docker基础+registry
  9. Pytorch生成Tensor常用方法汇总
  10. .Net 的 Web 项目中 关于TreeView 的 checkBox 的操作……
  11. Android 第一行代码
  12. 创建linux u盘启动,创建Linux之USB启动盘
  13. html如何将设置文本效果,Word2013中通过设置文本效果格式来为文字添加特殊效果...
  14. 关于“缓存着色(cache coloring, page coloring)”技术的相关资料介绍
  15. 跨国企业如何更好地从云革命中获益?
  16. 网页端调用客户端的cs 程序
  17. 六、外部中断控制LED灯开关
  18. 利用DICOM文件实现2D与3D体素坐标之间的转换
  19. 对销售代表的100个忠告
  20. snprintf()函数探讨

热门文章

  1. 一文说清linux system load
  2. 一场关于动态化开发实践的技术探讨
  3. 一文读懂深度学习:从神经元到BERT
  4. 基于 Kubernetes 实践弹性的 CI/CD 系统
  5. 老代码多=过度耦合=if else?阿里巴巴工程师这样捋直老代码
  6. 网络虚拟化技术为双11提供灵动网络
  7. 行,Python终于跌神坛了!程序员:活该!你敢来评论吗...
  8. python windows自动化 爬虫_使用Python实现自动化截取Windows系统屏幕
  9. java实验册_Java实验报告册Java实验报告册.doc
  10. java static 块 时机_java的static块执行时机