| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 4448 人关注过本帖
标题:在类中对const数组,const指针数组的初始化.
取消只看楼主 加入收藏
olivezhang
Rank: 1
等 级:新手上路
帖 子:223
专家分:0
注 册:2005-9-14
收藏
 问题点数:0 回复次数:5 
在类中对const数组,const指针数组的初始化.
在类中对const数组,const指针数组的初始化, 这个问题想了好久,也困扰了好久。
比如:

class CTest
{
public:
CTest() {}
private:
const int m_pA[10];
const int *m_ppB[10];
};

此时我们如何对m_pA和m_ppB进行初始化呢?按C++语法,
const型是必须初始化而且只可在类的初始化表中初始化。
但在初始化表中如何实现呢?我没有办法,不知道同行们有啥子好办法?
搜索更多相关主题的帖子: const指针 类中 CTest ppB 
2006-09-07 17:04
olivezhang
Rank: 1
等 级:新手上路
帖 子:223
专家分:0
注 册:2005-9-14
收藏
得分:0 
如果是const指针倒是好办,如:

class CTest
{
public:
CTest(const int *pA = NULL) : m_pA(pA) {}
private:
const int *m_pA;
};

但是数组还是没有头绪,各位兄台是否有良策?:)

谷底深深行 ,峰顶漫漫步......@_@
2006-09-07 17:15
olivezhang
Rank: 1
等 级:新手上路
帖 子:223
专家分:0
注 册:2005-9-14
收藏
得分:0 
谢谢各位的支持,俺获益良多。
1. 在三楼yeshirow版主的方法中,使用时确实有危险,但六楼song4版主说"参数传一个2级[10]指针"是什么意思呢?呵呵,说实话,不明白"2级[10]指针"...:)
2. 四楼wangxiang兄台说的用static const 代替const,这我也想过,但这样的话就不能用对象引用了。
3. 谢谢woodhead老兄的方法,很用启发性。。。

谷底深深行 ,峰顶漫漫步......@_@
2006-09-08 11:18
olivezhang
Rank: 1
等 级:新手上路
帖 子:223
专家分:0
注 册:2005-9-14
收藏
得分:0 
class CTest
{
public:
CTest() {}
private:
const int m_pA[10];
};
在我的游戏里,有些对象的数据是不可改变的,所以我就想把它用数组的形式定义为const常量,但象上面这样在类中定义
const int m_pA[10];苦于想不出出始化的方法,呵呵。现在的做法只好把const int m_pA[10];移到类外了,但这样容易重名,而且管理也比较混乱

谷底深深行 ,峰顶漫漫步......@_@
2006-09-08 11:28
olivezhang
Rank: 1
等 级:新手上路
帖 子:223
专家分:0
注 册:2005-9-14
收藏
得分:0 
wfpb版主对安全性的敏感度真高!!!向你们学习!

谷底深深行 ,峰顶漫漫步......@_@
2006-09-08 15:25
olivezhang
Rank: 1
等 级:新手上路
帖 子:223
专家分:0
注 册:2005-9-14
收藏
得分:0 
明白了!谢谢各位。。。

谷底深深行 ,峰顶漫漫步......@_@
2006-09-08 18:14
快速回复:在类中对const数组,const指针数组的初始化.
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017485 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved