std :: bad_alloc :: bad_alloc':无法访问类'std :: bad_alloc'中声明的私有成员

时间:2014-04-17 15:04:18

标签: visual-c++

C1EVMLogging::PublishError( NULL, 
                C1EVMLogging::C1EVM, 
                C1EVMLogging::Service, 
                C1EVMLogging::Failure, 
                NULL, NULL,
                L"realloc failed in CThreadMonitor::Monitor. Bytes requested: %d", 
                count * sizeof(HANDLE));
free(hArryPtr);

throw bad_alloc("realloc failed in CThreadMonitor::Monitor");

您好我正在尝试将Visual Studio 2008中的项目迁移到VS 2012 C ++。我很想知道为什么当我尝试使用字符串消息抛出异常时会出现此错误。

1 个答案:

答案 0 :(得分:0)

std::bad_alloc没有公共构造函数接受一个参数。唯一的公共构造函数是一个不带参数的默认构造函数。

显然,你使用的实现有一个私有构造函数接受一个参数 - 当然你不能实际使用它,它是私有的和所有。