首页 >后端开发 >C++ >为什么 C 语言中 this 是指针而不是引用?

为什么 C 语言中 this 是指针而不是引用?

Patricia Arquette
Patricia Arquette原创
2024-11-24 10:18:11574浏览

Why Is `this` a Pointer and Not a Reference in C  ?

为什么“this”是指针而不是引用?

C 程序员经常会遇到关于“this”是指针而不是引用的困惑一个参考。这个问题源于历史设计决策和语言的逐渐演变。

最初,C 仅提供指针,而不提供引用。然而,当引入运算符重载时,引用被认为是确保一致性所必需的。

虽然使用“this”引用可以消除对“&this”语法的需要,但它会引入赋值运算符调用的复杂性,其中“ *this" 是必需的,而不是 "this"。

此外,C 的向后兼容性至关重要。将“this”从指针更改为引用需要对代码进行大量修改,这是一个不切实际的选择。

因此,“this”在 C 中仍然是一个指针,以保持与现有代码的兼容性并满足不同的需求其用户社区。

以上是为什么 C 语言中 this 是指针而不是引用?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn