编译的时候,出现编译错误: ‘xxx’不能出现在常量表达式中
代码如下:
_term_pos_list.push_back(std::make_pair<word_pos->word, word_pos->pos>);
最后发现,原来是自己代码写错了,正确的写法是:
_term_pos_list.push_back(std::make_pair(word_pos->word, word_pos->pos)); // 注音是圆括号!!<pre name="code" class="cpp">//或者
_term_pos_list.push_back(std::pair<string, int>(word_pos->word, word_pos->pos));
哎,上面两个混淆了,找了3个小时的bug。。。
被自己蠢哭
本文详细解析了一段C++代码中出现的编译错误,指出在常量表达式中使用圆括号而非方括号的误解,并通过实例展示了正确的方法。避免了长时间的调试困扰。
2273

被折叠的 条评论
为什么被折叠?



