为什么 this 是指针而不是引用?
程序员经常会遇到这样的困惑:this 被指定为指针但不是 C 中的引用。这就引发了关于这种设计选择背后的推理的问题。
历史背景
当 C 处于开发的早期阶段时,该语言中不存在引用。指针是间接访问内存的唯一机制。后来引入了引用,使运算符能够重载并无缝运行。
成为指针的原因
尽管引用比指针有几个优点,例如保证有效性和为了更安全地处理内存,“this”由于历史原因仍然是一个指针。 C 不断发展,融入了用户社区的反馈。保留现有代码的向后兼容性的价值超过了将“this”转换为引用的潜在好处。
参考的其他参数
尽管有历史原因,但有些参数支持将“this”作为引用:
结论
虽然引用在某些情况下具有优势,由于历史考虑,“this”在 C 中仍然是一个指针。向后兼容性的重要性和语言的逐步发展决定了这一决定,尽管引用可能带来潜在的好处,但这一决定仍然存在。
以上是为什么 C 中的 this 指针不是引用?的详细内容。更多信息请关注PHP中文网其他相关文章!