这个问题的灵感来自于这个答案.
我一直都认为当调用者做一些愚蠢的事情时,被调用者永远不会负责,比如传递无效参数.我得出这个结论有几个原因,但也许最重要的一个来自这篇文章:
未定义的所有内容都是未定义的.
如果一个函数没有在它的文档中说它有效通过nullptr,那么你最好不要传递nullptr给那个函数.我不认为被叫方有责任处理这类事情.
nullptr
但是,我知道会有一些人不同意我的看法.我很好奇我是否应该检查这些东西,以及为什么.
c c++ null
c ×1
c++ ×1
null ×1