在类的构造函数中使用“this”关键字与在 C++ 中不使用它之间有区别吗

伊利斯

我读过的与我的问题相关并回答了部分问题的帖子:

在构造函数中使用“this”关键字

在构造函数和类的数据部分中使用关键字 new 的区别

我的问题:

我的具体问题来自这里的主题:

在构造函数中使用“this”关键字

该主题中提供的关于 C++ 歧义的答案是否相同?this如果我的参数与我的字段具有相同的名称,我是否只使用它很重要

这是一个带有this关键字的示例

    Gui::Gui()
    {
        this->organismSize = 10.0;
        this->foodSize = 5.0;
    }

没有this关键字:

    Gui::Gui()
    {
        organismSize = 10.0;
        foodSize  5.0;
    }
穆斯塔法

除非类属性和参数具有相同的名称,否则无需在构造函数中使用“this”关键字。

Gui::Gui(const double organismSize, const double foodSize )
{
    organismSize =organismSize; // we have an ambiguity, the compiler cannot make a difference between the parameter and the attribute
    foodSize = foodSize ;
}

Gui::Gui(const double organismSize, const double foodSize )
{
    this->organismSize =organismSize; // the compiler can make a difference between the parameter and the attribute
    //this->organismSize is the attribute while organismSize is the parameter
    this->foodSize = foodSize ;
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

是否考虑 new 关键字类中由默认构造函数初始化的元素也在 C++ 中使用 new 关键字?

在结构构造函数中使用“ this”关键字编译错误?-C ++

C#构造函数重载(使用此关键字)

在不同的类C#中使用“ this”关键字

在C ++中使用C关键字

在类中使用构造函数的打字稿不允许使用 new 关键字

在一个类中使用关键字this与多个构造函数

在Ruby类构造函数中使用关键字参数还是哈希参数?

为什么在构造函数中使用此关键字

在“ super()”构造函数中使用“ this”关键字

在构造函数中使用call()时与'this'关键字混淆

C++:使用关键字运算符重载成员的构造函数

为什么在C ++中的类指针声明中使用'struct'关键字

为什么在类成员函数C ++中两次使用关键字“ const”

如何在C#中的NHibernate的QueryOver中使用Oracle的内置关键字或函数?

如何在Swift中使用名称为Objective-C的类作为关键字

在WebBrowser C#中使用'this'关键字作为参数执行javascript函数

在Lua中,使用和不使用“ local”关键字声明的局部函数之间有区别吗?

在构造函数中使用关键字“this”时定义复制构造函数

在C ++ 11中使用关键字的用例

在C#中使用var关键字

在 C++ 接口声明中使用关键字

如何在C ++中使用“ using”关键字

在C#中使用`dynamic`关键字无法编译

C#中使用的yield关键字是什么?

如何在C ++中使用“ in”关键字

在C#中使用is关键字声明内联变量

何时在C#中使用volatile关键字?

在C#中使用Volatile关键字