C++中静态成员函数访问非静态成员变量

限时加码!20+主流AI编程工具免费用 购周边加赠Coding Plan Lite,Claude Code、Cursor等即刻畅享,学习进阶更高效! 阅读详情
先看一个class
class a
{
public:
  
static FunctionA()
c++自学笔记 核心编程篇(二) 因为静态成员变量的数据属于特定的一个对象,在静态成员函数中,若要访问,无法区分到底属于哪一个对象,因此静态成员函数不能访问静态成员变量c++编译器会给每个空对象也分配一个字节空间,是为了区分空对象占内存的位置(每个空对象也应该有一个独一无二的内存地址)。this指针指向被调用的成员函数所属的对象。通过4.3.1知道,在c++中类内的成员变量和成员函数是分开存储的。而静态成员变量的数据是所有对象共用的,所以可以被静态成员函数访问c++类中的成员可以是另一个类的对象,我们称该成员为对象成员。 阅读详情

相关推荐

复习笔记(三)——C++类和对象

目录类和对象在内存中的关系 类和对象在内存中的关系

别呀的博客 1137

类中的静态成员变量静态成员函数

static修饰的成员 你想要的,岁月凭什么给你,所有逆袭,都是有备而来,所有光芒,需要时间才能被看到,所有幸运,都是努力埋下的伏笔。所以,你不努力谁也给不了你想要的生活。 成员:成员变量 成员函数 static 修饰成员变量 修饰成员函数 static声明为静态的,称为静态成员。 不管这个类创建了多少个对象,静态成员只有一个拷贝,这个拷贝被所有属于这个类的对象共享。 静...

兰天禄的博客 1801

C++系列③---静态成员函数)与静态成员函数),常量函数,私有继承与公有继承

文章目录: 一、静态成员静态成员的区别? 二、静态成员函数静态成员函数的区别? 三、C++中引入静态成员函数有什么意义? 四、什么是常成员函数? 五、C++中引入常成员函数有什么意义? 六、C++中私有继承、公有继承的区别? 一、静态成员静态成员的区别? ①、名称上的区别 成员变量也叫实例变量静态变量也叫类变量。 ②、内存存储的区别: 成员变量存储到堆内存的对象...

Elsa~的博客 988

C++静态成员函数访问静态成员变量

C++静态成员函数访问静态成员变量

Retrieve的专栏 771

C++静态函数访问静态成员变量

最近做网络通信,其中需要做个架构包含回调函数,里面有个静态函数,网络数据传入这个静态函数,然后再让这个静态函数调用回调函数把数据传到另外一个类。3. 在class的cpp声明这个静态类,在构造函数里把当前类指针赋值到静态类的指针即可。

z15f34的博客 700

C++静态成员函数访问静态成员变量的方法

静态成员函数不能访问静态成员,这是因为静态函数属于类而不是属于整个对象,静态函数中的 member可能都没有分配内存。静态成员函数没有隐含的this自变量。所以,它就无法访问自己类的静态成员。但我们在一个class中要使用CreateThread,并且需要在这个开启的线程中处理类的静态成员变量的时候,因为CreateThread需要入口函数的地址,因此要进入类的成员函数时要求这个类成员函数

jirryzhang的博客 7520

c++静态成员函数访问静态成员变量

开始之前先看一个例子 #include using namespace std; class A  { public:  //void  show(int j){x=j;cout  void static show(int j){x=j;cout private:   int x; }; int main() {  A b;  b.show(10);

xinanzhung的专栏 847

c++静态成员函数访问静态成员变量(函数)

解决静态成员函数访问静态成员变量函数

dfaqweqwe的博客 1047

为什么C++静态成员函数不能访问静态成员变量、不能调用静态成员函数?(面试常考)

先来看一个简单的

认知 行动 坚持 1万+

c++静态成员函数访问静态成员变量

#include using namespace std; class A { public: static void FunctionA(A *ma) { ma->menber = 1; } private: int menber; }; int main() { A ma; A::FunctionA(&ma); ma.FunctionA(&ma);

zhy755788055的专栏 610

C++静态成员函数访问静态成员变量的方法

最近在 VS2010 里开发出厂烧写工具,遇到一个问题:   我创建了一个线程,在这个线程里要访问静态成员,而这个线程函数静态的。最后找到的办法是用对象指针来做。 sourcecode: 1 #test.h 2 3 class Test 4 { 5 protect: 6 static UINT threadFun(LPVOID pParam); ...

weixin_30375427的博客 168

C++静态成员函数访问静态成员变量(转)

<br />这两天写一个简单的程序,由于程序运行占用cpu比较厉害,导致运行中界面窗口无法交互,因此想到了多线程,以前没有接触过mfc多线程,在网上看了两篇文章,觉得也不过如此,就开始动手写了,结果发现即使是看别人写很简单,自己动手也会出现很多问题,哪怕是看起来真的很简单的问题。<br /> <br />这里遇到的问题就是由于多线程的函数必须是static的,然后需要在里面调用non-static的函数,我就没有办法了,于是又开始网上找资料,下面就将这篇文章转贴过来,供大家学习思考:<br /> <br /

3648
上一篇: 关于G.729压缩问题的一些总结
下一篇: Video Capture and play
fancylea
博客等级 码龄20年 52粉丝 43原创
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值