请教afxDump.setdepth()函数的用法

laomai 2003-12-02 03:49:05
看了一下MSDN,大概明白了这个函数的功能,写了一个小例子想验证一下
int A[5];
for(int i=0;i<5;i++)
{
A[i]=i;
}
#ifdef _DEBUG
afxDump<< "File could not be opened " <<"\n";
afxDump.SetDepth(0);
afxDump<<A;
afxDump.SetDepth(1);
afxDump<<A;
afxDump.Flush();
#endif
但在DEBUG里窗口里看到的全是A的地址。请问
1、不用循环是否能全部看到数组的值
2、哪位大虾能给出一个合适的例子说明setdepth(0)和setdepth(1)的不同影响/
...全文
111 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
carbon107 2004-01-05
  • 打赏
  • 举报
回复
不用循环可以全部看到数组的值
carbon107 2004-01-05
  • 打赏
  • 举报
回复
#ifdef _DEBUG

afxDump<<x;

#endif

将结果显示在OutPut,不能在Release状态下。Ctrl+F5似乎无效,F5可以。

afxDump.SetDepth(1);
设置深度,如maps,arrays,它只打出有几个可元素,我们用上面的这个函数,它会将所有的内容打出来.
#ifdef _DEBUG
char test[] = "0123456789\n";
afxDump.HexDump( "--", (BYTE*) test, 11, 6 );
#endif
结果为:
-- 30 31 32 33 34 35
-- 36 37 38 39 0A
第一个参数,行首的打头字符.
第二个参数,要打的内容.
第三个参数,要打的元素个数.
第四个参数,每行的个数.

laomai 2003-12-04
  • 打赏
  • 举报
回复
自己顶一下
laomai 2003-12-03
  • 打赏
  • 举报
回复
nonocast(如果没有如果)
好事做到底,能给一个实际的代码吗,体现出setdepth(0)和setdepth(1)的不同作用?
谢谢!
laomai 2003-12-02
  • 打赏
  • 举报
回复
nonocast(如果没有如果) ,能给出具体的源代码吗?
我如果直接写
class A
{
int x;
};
A a;
afxDump<<a;
提示报错:-(
nonocast 2003-12-02
  • 打赏
  • 举报
回复
class A
{
int x;
};
class B
{
A a;
}
如果SetDepth(1)的时候就能序列化B中的a
否则则不能
laomai 2003-12-02
  • 打赏
  • 举报
回复
flyelf(空谷清音)
那A和B又分别是什么?呵呵
flyelf 2003-12-02
  • 打赏
  • 举报
回复
if(afxDump.GetDepth() == 0)
afxDump<<A;
else if(afxDump.GetDepth() == 1)
afxDump<<B;

16,472

社区成员

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

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

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