C++函数模板重载引发“返回局部临时对象引用”警告的问题咨询
C++函数模板重载引发“返回局部临时对象引用”警告的问题咨询
各位C大佬好!我最近在啃《C Templates: The Complete Guide 2nd Edition》这本书,跟着里面的示例写函数模板重载的代码,结果编译时触发了**“返回局部临时对象引用”**的警告,想过来请教下大家问题出在哪,该怎么解决?
先把我用到的代码贴出来:
#include <cstring> #include <iostream> template<typename T> T const& max(T const &a, T const &b){ std::cout << "max ref 2\n"; return b<a ? a : b; } char const* max(char const *a, char const *b){ std::cout << "max char 2\n"; return (std::strcmp(b, a) <
注:代码是从书中摘录的,可能复制时没截全,但核心的重载逻辑就是这样,麻烦各位帮忙看看啦!
备注:内容来源于stack exchange,提问作者heturing
相关产品推荐
相关产品推荐

