在c++中调用delete时可选括号

Optional brackets while calling delete in C++

本文关键字:delete c++ 调用      更新时间:2023-10-16

假设我创建了一个对象Shape *shape = new Shape()。然后我可以使用delete关键字释放内存。但是有两种写法:

delete (shape); //with brackets

delete shape; //without brackets

首先可以清楚地理解shapedelete函数的参数。但是第二个呢?引擎盖下面发生了什么?

delete不是函数,但操作符和括号并不表示调用它。你可以用括号来划分变量名,因为。

例子:

    int a = 5;
    int b = a;
    b = (a); //also ok

你可以在这里阅读关于使用delete操作符