我的类中有一个成员变量:
class Foo
{
// ...
private:
boost::posix_time::ptime t;
}
我想在构造函数中将其初始化为一个众所周知的值,以便我知道程序尚未设置它:
Foo::Foo()
: t(NULL) // doesnt work
{}
但是将其设置为 NULL 不起作用,因为它不是指针。
如何将boost::posix_time::ptime
初始化为已知值?
默认构造函数将其初始化为 boost::posix_time::not_a_date_time
。 有一个成员函数来检查该t.is_not_a_date_time()
。 有关详细信息,请参阅文档。
#include <iostream>
#include <boost/date_time/posix_time/posix_time.hpp>
class Foo
{
public:
boost::posix_time::ptime t;
Foo() : t() {}
};
int main()
{
Foo foo;
std::cout << std::boolalpha
<< foo.t.is_not_a_date_time() << 'n';
}
魔杖盒上的演示