is_pointer是位于<type_traits>头文件下的模板。该模板用于检查给定类型T是否为指针类型。
语法:
template <class T > struct is_pointer;
参数:
模板只能具有类型T的参数,并检查给定类型是否为指针
返回值:
它返回一个布尔值,如果给定类型是指针变量,则返回true,如果给定类型不是指针变量,则返回false
举例:
#include<iostream>
#include <type_traits>
using namespace std;
class person
{
};
int main()
{
cout<<"person: "<<is_pointer<person>::value<<endl;
cout<<"person*: "<<is_pointer<person*>::value<<endl;
cout<<"int: "<<is_pointer<int>::value<<endl;
cout<<"int*: "<<is_pointer<int*>::value<<endl;
cout<<"int**: "<<is_pointer<int**>::value<<endl;
cout<<"int***: "<<is_pointer<int***>::value<<endl;
}
输出: