Pra*_*xit 1 c++ void new-operator
我有一个非常特殊的问题.我想初始化一个由void指针指向的数组,使用new分配内存,如下所示.
const int ARRAY_SIZE = 10;
void InitArray()
{
int *ptrInt = new int[ARRAY_SIZE];
for(int i=0; i<ARRAY_SIZE;i++)
{
ptrInt[i] = 1; //OK
}
void *ptrVoid = new int[ARRAY_SIZE];
for(int i=0; i<ARRAY_SIZE;i++)
{
*(int*)ptrVoid[i] = 1; //Culprit : I get a compiler error here
//(error C2036: 'void *' : unknown size)
}
}
Run Code Online (Sandbox Code Playgroud)
现在,我想初始化这个数组的元素,ptrVoid用1表示.我该怎么做呢?使用此代码,我得到编译器错误,如代码中所示(我正在使用VS 2010).有什么建议?
| 归档时间: |
|
| 查看次数: |
4108 次 |
| 最近记录: |