gpt4 book ai didi

c++ - new (float*)[] 和 new float*[] 的区别

转载 作者:太空狗 更新时间:2023-10-29 20:21:00 24 4
gpt4 key购买 nike

new int*[]new (int*)[] 之间有什么区别:

int** pA = new int*[2] // returns a pointer to an array of pointers to int.

new (int*)[2] // what should this return ? Shouldn't it be same as the above.

同样,

float* pB1 = new float[3]; // compiles successfully.

float* pB2 = new (float)[3] //Gives an error. Shouln't it return an array of floats ?

但是,编译器说:

A value of type 'float' cannot be used to initialize a value of type float* .

我在这里错过了什么?我正在使用 VS2015 社区 IDE。

最佳答案

float* pB1 = new float[3];

正在分配一个float数组

float* pB2 = new (float)[3]

要求分配一个 ??在“ float ”位置(无意义),这就是您遇到的错误。这是放置新语法,请在此处查看更多信息 Difference between new (float*)[] and new float*[]http://en.cppreference.com/w/cpp/language/new正如评论中指出的

关于c++ - new (float*)[] 和 new float*[] 的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46695598/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com