<分区>
有人知道为什么这段代码在“ map ”行崩溃并显示错误消息:“调试断言失败:无效的空点”吗?
#include <cstdint>
#include <map>
#include <string>
using namespace std;
map<string, string> VarZeroTable = {
{ "bool", "false" },
{ "int", "0" },
{ "char", '\0' },
{ "float", "0.0"},
{ "double", "0.0"},
{ "string", "\"\"" },
{ "short", "0" },
{ "long", "0" },
{ "uint64_t", "0" },
{ "uint32_t", "0" },
{ "uint16_t", "0" },
{ "uint8_t", "0" },
{ "uintmax_t", "0" },
{ "int8_t", "0" },
{ "int16_t", "0" },
{ "int32_t", "0" },
{ "int64_t", "0" },
{ "intptr_t", "nullptr" },
{ "uintptr_t", "uintptr_t" },
{ "size_t", "0" },
{ "ptrdiff_t", "0"}
};
int main(int argc, char** argv) {
int count = VarZeroTable.count("int64_t");
return 0;
}