作者jokerspy (苏哥)
看板EE_DSnP
标题[问题] newObjs
时间Wed May 6 14:18:23 2009
在newObjs中 我尝试这样写
void newObjs(size_t n) {
// TODO
for (size_t i = 0; i < n ; i++)
{
MemTestObj * newobj = new MemTestObj(sizeof(MemTestObj));
}
}
但是compile的时候 却遇到
memTest.h: In member function "void MemTest::newObjs(size_t)":
错误:对MemTestObj::MemTestObj(unsigned int) 的呼叫没有匹配的函数
附注:备选为: MemTestObj::MemTestObj()
MemTestObj::MemTestObj(const MemTestObj&)
似乎是没有overload成功 是我呼叫new的方式有错吗??
我试着改了几种写法
发现new的prototype是
static void* MemTestObj::operator new(size_t)
似乎传进去的参数也没错阿
难道overload的new和以往
int * a= new int(10)
的传参数方法不同吗
还是我哪里写错了呢??
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.112.4.235
1F:推 ric2k1:在外面要用 new [10]... 里面自然会变成 new [](144)... 05/06 14:54
2F:→ ric2k1:new A(10)是在呼叫constructor,大家写 code 写到晕掉了吧XD 05/06 14:55