头文件中的C ++模板方法

时间:2015-09-17 11:54:07

标签: c++ templates

我遇到以下代码的问题:

#ifndef UTILS_H
#define UTILS_H
#include <cstdint>
#include <iostream>


namespace Utils
{
    template<class T> 
    std::string hexify(T val)
    {
        std::stringstream stream;
        stream << "0x"
            << std::setfill('0') << std::setw(sizeof(T) * 2)
            << std::hex << val;
        return stream.str();
    }
};

#endif

它告诉我“'setw':标识符未找到”,并且对于每个std :: function调用都是一样的。

它出了什么问题?

1 个答案:

答案 0 :(得分:3)

设置字段宽度(setw)属于partitioner: org.apache.cassandra.dht.Murmur3Partitioner,您显然没有将其包含在代码中。试试这段代码:

<iomanip>

了解更多信息:http://www.cplusplus.com/reference/iomanip/setw/