c++中pair<>的成员无法初始化make_pair为NULL

时间:2021-03-15 04:18:57

将一个std::pair <> 类型变量output用make_pair()初始化为(“data”, NULL),其中OpNode是自定义的数据类型.

std::pair<string, OpNode*> output = make_pair("data", NULL);

编译器报错,说类型不匹配
解决办法:将NULL强制转换为OpNode*类型指针:

std::pair<string, OpNode*> output = make_pair("data", (OpNode*)NULL);

参考:https://*.com/questions/18217221/c-cant-initialize-a-pointer-in-a-pair-to-null

关键词:pair null