社区
其它技术问题
帖子详情
非静态数据成员能赋初值吗?
Whysf
2016-05-27 01:36:15
typedef struct VNode
{
VertexType data;//顶点信息
ArcNode *firstarc = NULL;//指向第一条与该顶点相连的弧
}VNode, AdjList[MAX_VERTEX_NUM];
以上代码片段,VC6.0下报错,VS2013通过
...全文
363
3
打赏
收藏
非静态数据成员能赋初值吗?
typedef struct VNode { VertexType data;//顶点信息 ArcNode *firstarc = NULL;//指向第一条与该顶点相连的弧 }VNode, AdjList[MAX_VERTEX_NUM]; 以上代码片段,VC6.0下报错,VS2013通过
复制链接
扫一扫
分享
举报
写回复
配置赞助广告
用AI写文章
3 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
paschen
2016-05-27
打赏
举报
回复
C++11标准前是不允许的,可以通过构造函数初始化列表实现
赵4老师
2016-05-27
打赏
举报
回复
语法糖越甜,编译调试查错越苦! 把有限的生命浪费在品尝/品鉴无穷多种的语法糖中,我认为不值当。
lm_whales
2016-05-27
打赏
举报
回复
C++11 可以 此前 0x不是正式标准,他是酝酿中的11 也是可以的 再前,不可以初始化非静态成员。 版本不同,有所差异。 可能还跟 具体编译器有关 不过C++11 弃用NULL,改用nullptr了
为何类中变量不
能赋
值也不能初始化?
首先C++中给变量赋值的工作是,在该变量的内存位置中保存某某值。理解这点之后再继续看。 Class 也就是类,我举例 CMyclass。 我声明它的时候他是不存在于内存中,也就是说他不是实际存在的对象,只是一张设计图。因此你可以在里面声明一个变量 (int a)。但是它其实不存在实体因此给该变量的内存位置保存数据是不可能的。 Class在内存中生成时应该是 Cmyclass abc; 这样你声明的...
C++类的静态
成员
【需要注意的几点】
静态数据
成员
的使用方法和注意事项如下: 1、
静态数据
成员
在定义或说明时前面加关键字static。 2、静态
成员
初始化与一般数据
成员
初始化不同。
静态数据
成员
初始化的格式如下: ::= 这表明: (1) 初始化在类体外进行,而前面不加static,以免与一般静态变量或对象相混淆。 (2) 初始化时不加该
成员
的访问权限控制符private,publ
静态数据
成员
必须赋
初值
实验环境: OS: Window 7 IDE: Visual Studio 2010 Pro 以下代码虽然没有语法错误,但无法通过编译。 #include using namespace std; class C { public: void f() {
什么是静态
成员
(
静态数据
成员
和静态函数
成员
)
一:静态
成员
: 在c++类中声明
成员
时, 加上static关键字声明的
成员
叫静态
成员
。 跟平时声明
成员
时一样,只不过是在前面多加了一个static静态
成员
分为:
静态数据
成员
和静态函数
成员
(因为类的
成员
本身就分为两类,属性和行为,也就是数据和函数) 二:
静态数据
成员
: 一:类中定义 二:类外初始化为什么要这样类外初始化呢?代码解释: #include<iostream> using namespace std; class ClassName { public: C...
静态
成员
函数访问
非
静态数据
成员
【C++】
静态
成员
函数访问
非
静态数据
成员
静态数据
成员
静态
成员
函数
静态数据
成员
定义格式: static 类型名
静态数据
成员
名 ; 详解:由于
静态数据
成员
属于本类的所有对象共享,不属于特定类对象,因此在未产生类对象时作用域就可见,即:在未产生类的实例时,就可以对它进行操作。 初始化: 类型 类名 ::
静态数据
成员
= 初始化值 ; 详解:
静态数据
成员
必须在类外初始化,不可在类体内,因为:构造函数中,如果可以,则每次建立对象,都会对
静态数据
成员
的值进行修改,这违背
静态数据
成员
的使用目的;类内也不可以初始化
其它技术问题
3,881
社区成员
9,044
社区内容
发帖
与我相关
我的任务
其它技术问题
C/C++ 其它技术问题
复制链接
扫一扫
分享
社区描述
C/C++ 其它技术问题
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章