zoukankan      html  css  js  c++  java
  • HBufC 的 zero 方法测试

    HBufC 的 zero 方法测试
    今天看到 HBufC 的Zero 方法了,帮助中说是

    Zero()

    IMPORT_C void Zero();

    Description

    Sets the length of the data to zero.

    把 Lenght 设为  0 了,那内容还存不存在,下面是试验代码

    HBufC* aTest = HBufC::NewL(12);
     CleanupStack::PushL(aTest);
     _LIT(KTest,"qijianzhou");
     TPtr ptr = aTest->Des();
     TBuf<12> aBuf(KTest);
     ptr.Append(aBuf);
     _LIT(KFormat1,"length=%d\nsize=%d\ncontent=%S");
     console->Printf(KFormat1,aTest->Length(),aTest->Size(),&ptr);
     console->Getch();
     ptr.Zero();
        console->Printf(KFormat1,aTest->Length(),aTest->Size(),&ptr);
     CleanupStack::PopAndDestroy();

    经过试验,发现 内容给清空,同时 length 为 0

    再测试一下刚创建后的 length 及 size
    _LIT(KFormat1,"length=%d\nsize=%d\ncontent=%S");
     HBufC* aTest = HBufC::NewL(12);
     
     CleanupStack::PushL(aTest);
     _LIT(KTest,"qijianzhou");
     TPtr ptr = aTest->Des();
     TBuf<12> aBuf(KTest);
     // 测试刚创建完后长度及大小
     console->Printf(KFormat1,aTest->Length(),aTest->Size(),&ptr);
     console->Getch();
     ptr.Append(aBuf);
     
     console->Printf(KFormat1,aTest->Length(),aTest->Size(),&ptr);
     console->Getch();
     ptr.Zero();
        console->Printf(KFormat1,aTest->Length(),aTest->Size(),&ptr);
     CleanupStack::PopAndDestroy();

    经测试,刚创建后的 Length 及 Size 都为 0,内容为空

    如果对于 HBufC 及 TBuf ,赋值时,内容长度大于指定的长度,则程序会出现异常



    安平2009@原创
    qi_jianzhou@126.com

  • 相关阅读:
    window常见事件onload
    BOM顶级对象window
    模拟京东快递单号查询案例
    [Hibernate] one-to-one
    Katy Perry
    [Java] int 转换为BigDecimal
    [easyUI] datagrid 数据格 可以进行分页
    [easyUI] 树形菜单 tree
    [easyUI] lazyload 懒加载
    [easyUI] autocomplete 简单自动完成以及ajax从服务器端完成
  • 原文地址:https://www.cnblogs.com/zziss/p/1648718.html
Copyright © 2011-2022 走看看