Qt变量和getter的命名约定,以便它们不会发生冲突?

sas*_*alm 1 c++ qt naming-conventions

在我的一个课程中,我有一个成员"QSize frameSize".我想为它制作一个getter函数,自然我想到了"QSize frameSize()",但这与变量名相同!在Qt中,约定不使用getFrameSize,那么它们如何避免在自己的源代码中发生名称冲突?

Fre*_*abe 9

好吧 - 首先:使用来源,卢克!在Qt的源代码是在开源许可证,所以你可以自由地检查他们是如何做的事情.

话虽这么说,在绝大多数情况下,Qt没有这个问题,因为大多数公共类只有一个成员变量("d指针"),因为它们实现了pimpl习惯用法.所以他们可能有类似的功能

int QSomeThing::foo() const {
    return d->foo;
}
Run Code Online (Sandbox Code Playgroud)

最后但并非最不重要的是,我不知道Qt源代码中的成员变量的任何全局命名规则,但有一些完善的约定.我碰巧使用的是在所有成员变量的名称前加上m_(表示它是成员).所以上面的函数,在我的源代码中,(假设我不使用pimpl习语)看起来像:

int QSomeThing::foo() const {
    return m_foo;
}
Run Code Online (Sandbox Code Playgroud)

你的旅费可能会改变.