这是编译时返回的异常错误,只有一些编译器参数。
好的g++ -std=c++11 -m64 -O3 -DNDEBUG
但是随着g++ -std=c++11 -m64 -Wall -g
,会出现这个问题:
宏“htonl”传递了 7 个参数,但只需要 1 个
代码:
const unsigned int h = htonl(hash::CompileTime<'A', 'S', 't', 'r', 'i', 'n', 'g'>::hash);
我不确定问题是来自调用htonl
还是来自我的模板化哈希。
你知道怎么解决吗?
其他信息:
template<const char C0, const char C1 = '\0', const char C2 = '\0',
const char C3 = '\0', const char C4 = '\0', const char C5 = '\0',
const char C6 = '\0', const char C7 = '\0', const char C8 = '\0',
const char C9 = '\0', const char C10 = '\0'>
struct CompileTime
{
//Do you think this code could help?
};