关于CString数组的个数

LILI00000 2009-11-25 05:03:55
设:
CString *cs;
cs=new CString[number];
求number
...全文
777 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
LILI00000 2009-11-25
  • 打赏
  • 举报
回复
其实我想问的是CStringArray::SetSize 的方法!
LILI00000 2009-11-25
  • 打赏
  • 举报
回复

SetStrTable("select 名字 from 456"); //查询表语句
//打开记录表:
if (m_rs->Open(m_strTable,CADORecordset::openUnknown))
{
GetValue();
AfxMessageBox(m_FieldName[m_rs->GetFieldCount()-1]+" 的值为 "+m_Value[m_rs->GetFieldCount()-1]);
m_rs->Open("select * from 456");
GetValue();
AfxMessageBox(m_FieldName[m_rs->GetFieldCount()-1]+" 的值为 "+m_Value[m_rs->GetFieldCount()-1]);
}
BOOL CADOAppDlg::GetValue()
{
if (!m_rs->IsOpen())
{
return false;
}
long cols=m_rs->GetFieldCount(); //取得字段总数
_variant_t var;
m_FieldName.RemoveAll();
m_FieldName.FreeExtra();
m_Value.RemoveAll();
m_Value.FreeExtra();
for (int i=0;i<cols;i++)
{
m_rs->GetFieldInfo(i,&m_FieldInfo); //取得第i项的数据(用CADOFieldInfo)
m_FieldName.Add(m_FieldInfo.m_strName); //把CADOFieldInfo转成CString
m_rs->GetFieldValue(m_FieldName[i],var);
m_Value.Add((LPTSTR)_bstr_t(var));
}
return true;
}

还是CStringArray好用!
LILI00000 2009-11-25
  • 打赏
  • 举报
回复
[Quote=引用 12 楼 bxf19830819 的回复:]
啥意思?

干脆用CStringArray算了,也不用考虑大小
[/Quote]
CStringArray不太会用,请教!
jenf 2009-11-25
  • 打赏
  • 举报
回复
[Quote=引用 11 楼 lili00000 的回复:]
引用 10 楼 jenf 的回复:
CString str[] = {"111","222","333"};
int n = sizeof(str)/sizeof(CString);


CString *str;
str=new CString[5];
int n = ?

怎样让n=5?
[/Quote]
这个你不是已经知道大小了么?为什么还需要再获取呢?不太明白!!!
峰白 2009-11-25
  • 打赏
  • 举报
回复
啥意思?

干脆用CStringArray算了,也不用考虑大小
LILI00000 2009-11-25
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 jenf 的回复:]
CString str[] = {"111","222","333"};
int n = sizeof(str)/sizeof(CString);
[/Quote]

CString *str;
str=new CString[5];
int n = ?

怎样让n=5?
jenf 2009-11-25
  • 打赏
  • 举报
回复
CString str[] = {"111","222","333"};
int n = sizeof(str)/sizeof(CString);
LILI00000 2009-11-25
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 successqigao 的回复:]
引用 7 楼 lili00000 的回复:
可能我表达有点错误,
应该是求这个数组的个数


你定义多少就是多少啊?
[/Quote]
哪用什么语句可以求得它,
如:
int a[]={1,2,3};
int b=sizeof(a)/sizeof(a[0]);
b=3
江川 2009-11-25
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 lili00000 的回复:]
可能我表达有点错误,
应该是求这个数组的个数
[/Quote]

你定义多少就是多少啊?
LILI00000 2009-11-25
  • 打赏
  • 举报
回复
可能我表达有点错误,
应该是求这个数组的个数
这不是鸭头 2009-11-25
  • 打赏
  • 举报
回复
这样应该都编译不了吧...
voidsky 2009-11-25
  • 打赏
  • 举报
回复
这个number。。。。。。。。。。。
pigkiller23 2009-11-25
  • 打赏
  • 举报
回复
是想说 用 number定义了一个数组,然后定义之后又想要取得这个数组元素个数(在假定不知道数组原始个数的情况下)?

如果在一个函数内好办,但是通过函数调用的话好像就失去控制了。
江川 2009-11-25
  • 打赏
  • 举报
回复
number可以定义栈的大小,不过编译器可以调整这个大小,默认是1M
bragi523 2009-11-25
  • 打赏
  • 举报
回复
没看懂
西溪晨风 2009-11-25
  • 打赏
  • 举报
回复
无解,你要提供number。

除非这样:
CString cs[number];

number == _countof(cs);

16,551

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Creator Browser
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧