百科问答小站 logo
百科问答小站 font logo



C++如何返回未知类型的空引用? 第1页

  

user avatar   haozhi-yang-41 网友的相关建议: 
      

几个可选方案,自己看着顺眼挑一个:

  1. 给一个特殊标记的实例(参考std::end返回的迭代器)
  2. 抛异常
  3. 构造个真正的空引用,直接让外面core


user avatar   xi-yang-86-73 网友的相关建议: 
      

你只有两个选择:

  • 返回迭代器或者指针,允许表示空值。
  • 返回对象实例,超出范围时创建一个默认构造的新实例。我现在常用的一个基础库里的容器就是这种奇怪的设计。



  

相关话题

  请问这段C++代码是未定义行为吗? 
  C++ 11为什么引入nullptr? 
  C 语言和 C++、C# 的区别在什么地方? 
  如何把一段简单的代码变复杂? 
  为何void类型指针不能解引用,却可以参与强制类型转换? 
  为什么C++库开发人员都喜欢自己造一个字符串类?你见过性能最好开源字符串类是哪个? 为什么? 
  C++ 中 new 和定位 new 的返回值都是 void*,却为什么可以被赋值给不同类型的指针? 
  为什么程序代码被编译成机器码就不能跨平台运行? 
  关于C++23网络库的争论,大家有什么看法? 
  作为一名程序员,我这属于什么水平? 

前一个讨论
为什么Rust 标准库的 TreeMap 采用 B 树实现,而不是常用的红黑树?
下一个讨论
以1942年的技术水准能否建造出一艘福莱斯特级体量的航空母舰?





© 2025-05-05 - tinynew.org. All Rights Reserved.
© 2025-05-05 - tinynew.org. 保留所有权利