社区
C++ 语言
帖子详情
C++能不能实现本类公有属性在外类赋值 并使值在本类有效 不用静态或全局?
wuxiao0313
2009-01-15 11:12:54
C++能不能实现本类公有属性在外类赋值 并使值在本类有效 不用静态或全局?
...全文
143
9
打赏
收藏
C++能不能实现本类公有属性在外类赋值 并使值在本类有效 不用静态或全局?
C++能不能实现本类公有属性在外类赋值 并使值在本类有效 不用静态或全局?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
9 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
wuxiao0313
2009-01-24
打赏
举报
回复
[Quote=引用 7 楼 hairetz 的回复:]
public里的数据在外类被赋值和访问不是很正常的事情吗?
[/Quote]
public里的数据在外类被赋值和访问 然后拿到属性当前类有效是很正常的事情吗?
wuxiao0313
2009-01-15
打赏
举报
回复
在外类生成本类对像然后赋值 之后在本类使用能有效?
都不是一个对象嘛 而且外类函数结束把对象析构了
gjy1606
2009-01-15
打赏
举报
回复
在外类赋值是肯定可以的,你只要保证在本类使用之前已经在其他类给他赋值就行了.是不用静态和全局呀!
hityct1
2009-01-15
打赏
举报
回复
楼主为何要这样?应该是无法实现。
猫已经找不回了
2009-01-15
打赏
举报
回复
[Quote=引用楼主 wuxiao0313 的帖子:]
C++能不能实现本类公有属性在外类赋值 并使值在本类有效 不用静态或全局?
[/Quote]
public里的数据在外类被赋值和访问不是很正常的事情吗?
wuxiao0313
2009-01-15
打赏
举报
回复
[Quote=引用 5 楼 shell8232565 的回复:]
不明白楼主“在本类中使用”是什么意思?如果是赋值后用同样的对象来操作这个值的话没有问题
[/Quote]
本类指的是被赋值的属性所在的类, 类中函数使用这个属性
应该是不能实现的
shell8232565
2009-01-15
打赏
举报
回复
不明白楼主“在本类中使用”是什么意思?如果是赋值后用同样的对象来操作这个值的话没有问题
wzg112
2009-01-15
打赏
举报
回复
不行吧根本不是一个对象,不能实现数据成员的共享,还是定义静态变量实现吧
InfidelX
2009-01-15
打赏
举报
回复
在外类生成本类对像然后赋值 之后在本类使用能有效?
都不是一个对象嘛 而且外类函数结束把对象析构了
======================
楼上正解
C++
静态
属性
和
静态
方法
静态
静态
成员是所有对象共享的,所以
不能
在
静态
方法里面访问非
静态
元素但非
静态
方法可以访问
类
的
静态
成员及非
静态
成员
静态
数据成员 1.
静态
数据成员的声明
静态
数据成员实际上是
类
域中的
全局
变量(
类
中的
静态
成员数据和函数都只是相当于声明的作用,而不是定义 声明不分配空间 在
类
里面只有const static才可以进行数据定义(初始化),作为常量使用,const或者static都不可以) 2.
静态
数据的定义 必须在.cpp文件中定义 否则就会出现无法识别外部符号的错误 3.
静态
数据成员的作用域
静态
数据成员被
类
的
C++
类
中的常量 const 、define、static
赋值
问题
先看下面一个
类
: class A{ static const int sci; const int cim; int ni; #define MYCONST"sdfs" }; 里面两个成员,一个
静态
常量,一个整型常量。 在用G++ 编译,只要你
不用
这两个成员,是可以通过的。 下面看看如何对它们
赋值
。 对于sci
赋值
: 1
QML
静态
值与
属性
绑定
赋值
前言 最近遇到一个奇葩问题,就是
C++
的model层触发信号,Listview不会进行数据更新,我是采用别名model来
赋值
的,我的方法:别名model =
C++
.model 的方式来
赋值
,所以一直没有更新,因为之前
属性
绑定问题没有搞得太明白,所以一度毁了自己三观,以为是自己代码出了问题(因为直接
赋值
model又是可以更新的),后面才明白我采用了
静态
赋值
而已,好了,下面记录一下我百度到的知识 简...
C++
类
:
类
中的
静态
属性
和函数、常量函数与常对象、
类
在内存中的存储
静态
属性
静态
成员包括
静态
成员
属性
、
静态
成员函数。 一个
属性
一旦设置为
静态
,那么整个程序中就独其一份。 如上所示,之前p.m_A的值是100。使用p2.m_A更改了该值为200后,即使再用p.m_A去调用,结果仍是200。
静态
属性
会在代码运行前的编译阶段就生成并保持存在
全局
区。
静态
属性
和
静态
成员函数都不算在
类
内,都是保存在别的区域(
全局
区)。
静态
属性
必须要有一个初始值,可以在
类
内声明,
类
外初始化。
类
内声明:
类
外初始化: Person::表示这个变量是在person作用.
C++
类
的
静态
数据成员
类
中存在两个
属性
:实例
属性
和
类
属性
。
类
属性
就是
静态
数据成员,实例
属性
是每个对象可以拥有不同的值(就是普通的数据成员)。在
C++
中,一个
类
中可以声明多个
静态
数据成员。
类
的static 数据
类
型(int、double···) 变量名①:所有对象共享同一份数据②:编译阶段分配内存③:
类
内声明,
类
外初始化
静态
数据成员具有
静态
生存期。由于
静态
数据成员不属于任何一个对象,因此可以通过
类
名对它进行访问,一般的用法是“
类
名::标识符”。
C++ 语言
65,211
社区成员
250,514
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章