具有相同名称的Getter / Setter

时间:2015-02-12 04:33:23

标签: c++ getter-setter

我有一个我需要松散模拟的API,因为我正在扩展它(所以没有改变约定),而我必须要做的事情之一是提供setter / getter,就像访问某些私有具有单一名称方法的成员实施一次用于设置和一次用于通过签名更改。

它看起来像这样

class MyClass{
    float m_t1;
    float m_t2;

public:
    const float t1();
    const float t2();

    void t1(float);
    void t2(float);
};


MyClass::MyClass(){
    m_t1 = 0.0;
    m_t2 = 0.0;
}


const float MyClass::t1(){
    return m_t1;
}

const float MyClass::t2(){
    return m_t2;
}

void MyClass::t1(float t_val){
    m_t1 = t_val;
}

void MyClass::t2(float t_val){
    m_t2 = t_val;
}

我的问题是,这有名字吗?也许是一种模式或其他东西。

虽然不是我的第一选择,如果我从头开始做事我不一定要介意,但任何指示让我能够阅读它(警告,建议,做什么,不要&#如果它是一个带有令人讨厌的惊喜的模式(在某些情况下比仅仅抛出两个漂浮物更复杂的情况下),我将不胜感激,以防万一它实际上是一件事。 / p>

如果有人想分享他们对此的看法,那当然是奖金,但我会对只是进一步阅读的链接感到满意。

1 个答案:

答案 0 :(得分:2)

我认为这是Objective-C setter / getter风格。例如,请参阅thisthis

只要您熟悉C ++重载,重载方法就不足为奇了。如果没有,那么我建议阅读更多有关重载的内容。

就个人而言,由于我来自Java背景,我喜欢拥有setVariable和getVariable名称。但同样,这完全是个人的。