如果我有一个头文件指出

class fanStatusManager{


public:

    //default constructor
    fanStatusManager();

    public fanstatus_t setFanStatus(fanstatus_t status);

private:
    //etc
}`

和一个实现它们的cpp文件:
fanStatusManager::fanStatusManager(){
    //default constructor TODOi
}

fanstatus_t fanStatusManager::setFanStatus(fanstatus_t status){
     //TODO: imlement this!
     assert(false);
}

我在每次实现之前都键入“fanStatusManager::”感到有些厌倦。有可能以某种方式规避吗?

最佳答案

尽管如果您将实现放在 header 中也可以避免键入类的名称,即

class fanStatusManager{
public:
    public fanstatus_t setFanStatus(fanstatus_t status) {
        //TODO: imlement this!
        assert(false);
    }
}

如果要单独实现成员函数,则无法解决此问题。这是因为C++允许独立的功能,即此语法完全有效:
fanstatus_t setFanStatus(fanstatus_t status) {
    //TODO: imlement this!
    assert(false);
}

上面定义了一个名为setFanStatus的独立函数,该函数不与任何类关联。

10-07 21:56