我正在尝试实例化boost库中定义的以下类
在boost / interprocess / detail / segment_manager_helper.hpp中定义
template<class CharType>
class char_ptr_holder
{
public:
char_ptr_holder(const CharType *name)
: m_name(name)
{}
char_ptr_holder(const anonymous_instance_t *)
: m_name(static_cast<CharType*>(0))
{}
char_ptr_holder(const unique_instance_t *)
: m_name(reinterpret_cast<CharType*>(-1))
{}
operator const CharType *()
{ return m_name; }
private:
const CharType *m_name;
};
但是我不能。我很困惑,因为m_name是一个指针,但是在初始化列表中使用CharType *的参数对其进行了“构造”。
救命
最佳答案
例如
char_ptr_holder<char> value("Hello!");