是否可以在C++中强制使用 "this" 关键字?
Is it possible to force the use of the "this" keyword in C++?
我在编程中真正不喜欢的一件事是变量名称的歧义。我想总是使用 this
关键字来访问类成员,但在某些情况下我经常忘记使用它,这会导致一些不一致。
所以我想在访问类成员时被迫使用 this
关键字。这会是个坏主意吗?我想可能有一个编译器选项,但我找不到任何关于它的信息。我正在使用 g++ 编译器。
这是一个循环问题。您希望编译器出错并在您访问类成员时通知您,而不添加前缀this->
,这样您就不会意外地引用局部变量或函数参数......但是出于完全相同的原因,编译器如何知道您真的打算访问该成员?而且,如果你不这样做,你将如何访问局部变量或函数参数?
C++根本不是这样设计的。某些语言(如 PHP)要求您必须使用 this
来访问成员,并且任何其他访问都被视为尝试读取本地范围的变量(无论它们是否存在),但C++没有。并且没有编译器开关来实现它。如果您担心这一点,请避免重复使用变量的名称!
简而言之,这是一个无法解决的问题。
相关文章:
- 在 c++ 中正确定义"this"关键字?
- "this"关键字在C++中的实现限制,因为它与危险但功能示例有关
- 带有 "this" 关键字的 Java Copy 构造函数
- "this"嵌套类中的关键字C++
- C++指针上的关键字运算符"this"
- 在普通 C 中使用 'this' 关键字
- 初始化列表中常量变量的"this"关键字
- 我应该使用 "this" 关键字从成员函数内部访问类成员吗?
- 使用 "this" 关键字时的"Error: expression must have a pointer type"
- 访问修饰符在继承中的不同行为取决于"this"关键字和模板或缺少它们
- 是否可以更改'this'关键字的类型?
- 使用"this"关键字从矢量中删除元素
- 使用 This 关键字和运算符重载
- 在结构构造函数中使用"this"关键字编译错误?-C++
- "this"关键字导致分段错误
- 是否可以在C++中强制使用 "this" 关键字?
- 使用this关键字编译程序
- 在 c++ 中使用 "this" 关键字对性能有影响吗?
- 在C++中使用"this"关键字
- C++中"this"关键字的使用问题