原始类型作为c ++中的对象

时间:2015-09-19 13:32:16

标签: c++

我遇到了以下代码,我无法理解其含义:

typedef int INT; 
5 .INT::~INT();

注意:数字5和小数之间有一个空格。

问题: 有人可以解释一下这两行究竟是什么意思吗? 2.如果没有typedef,为什么它不起作用?背后的任何原因?5 .int::~int()抛出错误。

1 个答案:

答案 0 :(得分:16)

.INT::~INT()伪析构函数调用,对模板化代码很有用。

请注意,如果没有typedef类型,则无法使用它。

Standardese:

C ++03§5.2.4“伪析构函数调用”:
  
      
  1. 在点.或箭头->运算符后使用伪析构函数名称表示析构函数   由 type-name 命名的非类类型。结果只能用作函数调用运算符()的操作数,并且此类调用的结果具有类型void。唯一的影响是在点或箭头之前评估后缀表达式
  2.