首页 >后端开发 >C++ >C 中的'this”是指针还是引用?

C 中的'this”是指针还是引用?

Susan Sarandon
Susan Sarandon原创
2024-11-25 13:57:11636浏览

Is `this` a Pointer or a Reference in C  ?

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

正如某些人所认为的,C 中的“this”概念通常会引起混乱它作为一个指针,而其他人则将它视为一个引用。历史背景揭示了这种明显的矛盾。

最初,C 仅具有指针。当引入运算符重载时,引用就成为确保一致性的必要条件。然而,“this”在早期版本中已经被建立为指针。

如果“this”是一个引用,则访问它需要“&”运算符,从而产生“&this”。相比之下,使用指针“*this”进行自赋值的语法显得更加简洁。因此,“this”作为指针的向后兼容性超过了将其作为引用的潜在好处。

虽然引用在安全性和简洁性方面具有优势,但“this”作为指针的既定约定由于 C 社区强调向后兼容性,因此保持不变。

以上是C 中的'this”是指针还是引用?的详细内容。更多信息请关注PHP中文网其他相关文章!

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