std::nullptr_t是c++空指針類型的文字,nullptr.在c++11中 引入的。
基本介紹
- 外文名:nullptr_t
- 本質:C++空指針類型的文字
- 引入:C++11中引入
- 套用領域:計算機編程
- 作用:控制編程
- 實質:程式語言
簡介,舉例,
簡介
std::nullptr_t是c++空指針類型的文字,nullptr.在c++11中 引入的
舉例
如果兩個或兩個以上的重載接受不同的指針類型,過載std::nullptr_t是需要接受一個空指針參數.
#include <cstddef>
#include <iostream>
void f(int* pi)
{
std::cout<<"Pointer to integer overload\n";
}
void f(double* pd)
{
std::cout<<"Pointer to double overload\n";
}
void f(std::nullptr_tnullp)
{
std::cout<<"null pointer overload\n";
}
int main(){
int* pi;
double* pd;
f(pi);
f(pd);
f(nullptr);// would be ambiguous without void f(nullptr_t)// f(NULL); // ambiguous overload: all three functions are candidates
}
Output:
Pointer to integer overload
Pointer to double overload
null pointer overload