社区
C++ 语言
帖子详情
good in
Knuthocean
2004-09-04 11:29:31
请说说这种声明怎么理解?
class X{
static X a;
int i;
//...
public:
//...
}
这儿的嵌套定义如何使用,又是如何分配内存的?
...全文
114
7
打赏
收藏
good in
请说说这种声明怎么理解? class X{ static X a; int i; //... public: //... } 这儿的嵌套定义如何使用,又是如何分配内存的?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
7 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
Knuthocean
2004-09-06
打赏
举报
回复
To Andy84920(你也不懂)
你的那个
ma.operator = ( [offset A::a] );//伪代码形式啦
是什么意思呀?
Andy84920
2004-09-04
打赏
举报
回复
请说说这种声明怎么理解?
class X{
static X a;
int i;
//...
public:
//...
}
这儿的嵌套定义如何使用,又是如何分配内存的?
//嵌套定义?何谓嵌套定义?static X a;只是一个声明而矣,所以你可以在一个类未定义完全时声明一个该类的类型如果你写成X a;那就不行了.因为这是一个定义,并没有分配内存(在定义的时候)
///为a分配内存是在程序启动时.所以你需要在其它的地方用 X X::a来定义一下.
nicknide
2004-09-04
打赏
举报
回复
A A::a;
int
main()
{
A ma;
}
内存分析:
全局读写内存区:A::a 四个字节:i
栈空间 A ma 四个字节,ma.i;
其实他们中间根本就没有那个static A::a,编译器看到如下的调用的时候:
ma = A::a的时候,就将其解析为如下方式:
ma.operator = ( [offset A::a] );//伪代码形式啦
只是引用了全局的一个地址上的一个对象而已
whyglinux
2004-09-04
打赏
举报
回复
>> 以后,任何一个 X 的对象都可以访问它。
说错了。因为是私有的,只能在类域内访问。
whyglinux
2004-09-04
打赏
举报
回复
static X a; 是 声明 了一个静态数据成员 a 的存在,而不是定义。它的定义要写在列的外面,先于这个类的对象的出现。比如可做如下定义:
X X::a;
以后,任何一个 X 的对象都可以访问它。
pacman2000
2004-09-04
打赏
举报
回复
a是static的,所以所有的class X都共用一份a
北极猩猩
2004-09-04
打赏
举报
回复
此贴标题意义不明,下次请在标题中写清问题的大致方向或描述
【In-Context Learning】What Makes
Good
In-Context Examples for GPT-3?
In-Context Learning是最近比较火热的方向,其主要针对超大规模模型(例如1750B参数量的GPT-3模型),在只提供少量标注样本作为提示的前提下,即可以实现很惊艳的效果。In-Context Learning的影响因素有很多,本文...
hdu 3482
Good
Serial Inc.
Good
Serial Inc. Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 288 Accepted Submission(s): 128 <br />Problem Description
Good
...
HDOJ 3482
Good
Serial Inc.
描述不清。...
Good
Serial Inc. Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 605 Accepted Submission(s): 244 Problem De
模拟实现商品加购物车
# 结账 价格*数量之和 money = 0 # 总价初始为0 # 双重循环,用于查询价格,计算总价 for wares in carts: for
good
in
good
s: if wares['编号'] ==
good
['编号']: money +=
good
['价格'] * wares['数量']
good
['...
41.for in 和 if in的区别 (解惑)
for word in words: # in [.....]判断内容有没有在列表中存在 ...比如 ’go‘ in '
good
' / '
good
' == '
good
' if '
good
' == '
good
': ---> 比较的内容是'
good
' '
good
' print('相等') if '
good
' in 'g..
C++ 语言
64,637
社区成员
250,559
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章