当前位置: 首页>>代码示例>>C++>>正文


C++ Alloc::setMC方法代码示例

本文整理汇总了C++中Alloc::setMC方法的典型用法代码示例。如果您正苦于以下问题:C++ Alloc::setMC方法的具体用法?C++ Alloc::setMC怎么用?C++ Alloc::setMC使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Alloc的用法示例。


在下文中一共展示了Alloc::setMC方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: tlist

void
TC_MemFail03::run()
{
  MemoryControlWithFailure mc;
  mc.resetCounters();
  mc.disableLimit();
  Alloc<REToken *> alloc;
  alloc.setMC(&mc);

  {
    TokenList tlist(&mc, alloc, "[a-z]");
  }

  size_t numAllocs = mc.m_numAllocs;
  for (size_t lim = 0; lim < numAllocs; lim++) {

    mc.resetCounters();
    mc.setLimit(lim);

    try {
      TokenList tlist(&mc, alloc, "[a-z]");
      ASSERT_TRUE(false);
    }
    catch (const bad_alloc &e) {
      ASSERT_TRUE(true);
    }
  }

  this->setStatus(true);
}
开发者ID:zurgzurg,项目名称:cpptoken,代码行数:30,代码来源:utests.cpp

示例2: new

void
TC_Basic02::run()
{
  MemoryControl mc;
  Alloc<REToken *> alloc;
  
  alloc.setMC(&mc);

  TokenList *toks = new (&mc) TokenList(&mc, alloc, "");
  toks->~TokenList();
  mc.deallocate(toks, 1);

  this->setStatus(true);
}
开发者ID:zurgzurg,项目名称:cpptoken,代码行数:14,代码来源:utests.cpp

示例3:

void
TC_MemFail2_05::run()
{
  MemoryControlWithFailure mc;
  mc.resetCounters();
  mc.disableLimit();
  Alloc<REToken *> alloc;
  alloc.setMC(&mc);

  this->expectFailure(mc, alloc, "{2 2}");
  this->expectFailure(mc, alloc, "{2 - }");
  this->expectFailure(mc, alloc, "{999999999999999999999999999999999");
  this->expectFailure(mc, alloc, "a{2,99999999999999999999999999999999999}");

  this->setStatus(true);
}
开发者ID:zurgzurg,项目名称:cpptoken,代码行数:16,代码来源:utests.cpp

示例4: catch

void
TC_Postfix_MemFail_01::run()
{
  MemoryControlWithFailure mc;
  mc.resetCounters();
  mc.disableLimit();
  Alloc<REToken *> alloc;
  alloc.setMC(&mc);

  {
    TokenList2 tlist1(&mc, alloc);
    TokenList2 tlist2(&mc, alloc);
    TokenList2::tmpTokList tmpList;

    tlist1.build("a");
    tlist2.buildPostfix(&tlist1, &tmpList);
  }

  size_t numAllocs = mc.m_numAllocs;
  for (size_t lim = 0; lim < numAllocs; lim++) {
    mc.resetCounters();
    mc.setLimit(lim);

    try {
      TokenList2 tlist1(&mc, alloc);
      tlist1.build("a");

      TokenList2 tlist2(&mc, alloc);
      TokenList2::tmpTokList tmpList;

      tlist2.buildPostfix(&tlist1, &tmpList);
      ASSERT_TRUE(false);
    }
    catch (const bad_alloc &e) {
      ASSERT_TRUE(true);
    }
  }

  this->setStatus(true);
}
开发者ID:zurgzurg,项目名称:cpptoken,代码行数:40,代码来源:utests.cpp


注:本文中的Alloc::setMC方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。