什么是匿名对象?

Sad*_*que 12 c++ standards visual-c++ c++11

什么是匿名对象?

C++是否支持/拥有匿名对象?

Lig*_*ica 14

C++标准没有定义术语"匿名对象",但是有理由认为可以使用该术语来描述任何没有名称的对象:

  • 临时工: f(T());
  • 未命名的函数参数: void func(int, int, int);

不会计算的是动态分配的对象:

从技术上讲,"对象"是任何存储区域[2003年的1.8/1],其中包括构成动态分配的整数的X字节new int;.

int* ptr = new int;指针(本身也是一个对象,不要忘记!)有名称ptr,整数本身没有其他名称*ptr.尽管如此,我仍然不愿称这是一个匿名的对象.

但是,再一次,没有标准的术语.

  • 没有"匿名对象"的定义,尽管规范使用术语"未命名对象"(在该含义中,即"没有名称的对象"),这似乎是一个类似的术语. (3认同)