问题描述
#include<iostream>#include<array>using namespace std;template<typename T>void des(T * pointer){ pointer->~T();}int main(){int * p = new int[8]; for (int i = 0; i < 8; i++)*(p + i) = i;des(p + 3);for (int i = 0; i < 8; i++)cout << *(p + i) << endl;//0 1 2 3 4 5 6 7 return 0;}
这是我的测试,函数必须使用模板,如果去掉模板,以int代替T的话,根本无法运行,所以这里我想问两个问题:(1)~int()是什么?(2)为什么用模板就可以正确运行?
问题解答
回答1:http://stackoverflow.com/ques...