utilities(C++)——Null类的设计

Null 类用于一些变量的初值;

#include <limits>

template<typename T>
class Null;

template<>
class Null<int>
{
public:
    Null() {}
    operator int() const
    {
        return int(std::numeric_limits<int>::max());
    }
};

template<>
class Null<double>
{
public:
    Null() {}
    operator double() const
    {
        return double(std::numeric_limits<double>::max());
    }
};

template<>
class Null<size_t>
{
public:
    Null() {}
    operator size_t() const
    {
        return size_t(std::numeric_limits<size_t>::max());
    }
};

你可能感兴趣的:(utilities(C++)——Null类的设计)