MFC中CString 可以定义数组变量么? 比如我定义cstring m[9]。

遇到了一个问题。我在头文件中声明staticCStringfre[4],在cpp文件中定义为CStringCLeftView::fre[0]="2S";CStringCL... 遇到了一个问题。
我在头文件中声明 static CString fre[4],
在cpp文件中定义为
CString CLeftView::fre[0]="2S";
CString CLeftView::fre[1]="2S";
CString CLeftView::fre[2]="2S";
CString CLeftView::fre[3]="2S";

编译的时候出错了,有下面两个错误指向CString CLeftView::fre[0]="2S";
cannot allocate an array of constant size 0
cannot specify initializer for arrays

有一个错误指向CString CLeftView::fre[1]="2S";
'public: static class CString * CLeftView::fre' : redefinition; different subscripts

CString CLeftView::fre[2]="2S"; CString CLeftView::fre[3]="2S"; 这两句中的错误与CString CLeftView::fre[1]="2S" 的错误相同。

我是初学MFC。希望大侠们有时间的话,能指点一下。我现在这谢过了。
展开
 我来答
zengfb2321
2013-03-30
知道答主
回答量:2
采纳率:0%
帮助的人:2997
展开全部
你在头文件里已经声明了fre,在cpp中就不用再声明了,去掉CString,直接赋值。第一个错误是数组不能声明为0个,后面的错误是说你重复定义了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
cossbow
2013-03-29 · TA获得超过697个赞
知道小有建树答主
回答量:798
采纳率:100%
帮助的人:223万
展开全部
可以用指针,但是麻烦一点,应为要用new和delete
CString是一个类,就像操作其他类一样,最好用指针
更多追问追答
追问
您能给我举个例子么?
追答
CString * pwcs[4];
for(int i=0;i<4;p[i++]=new CString);
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
bhtzu
2013-03-29 · TA获得超过1.1万个赞
知道大有可为答主
回答量:8088
采纳率:85%
帮助的人:4214万
展开全部
用CStringArray,你这样用会有问题。
更多追问追答
追问
您能给我举个例子么
追答
//CString转CStringArray
CString str = _T("i am a student");
CStringArray strArr;
if( DivStr(str,strArr,_T(" ")) <= 0)
{
AfxMessageBox( _T("数组为空!"));
return;
}

//CStringArray转CString
str = _T("");
int index =strArr.GetSize();
for(int i=0;i<index;i++)
{
str += strArr[i]+_T("_");
}
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式