Closed. This question is opinion-based。它当前不接受答案。












想改善这个问题吗?更新问题,以便editing this post用事实和引用来回答。

6年前关闭。



Improve this question




我有一个简单的问题,在这样的头文件中实现getter和setters是一个好习惯吗?
class WebsocketSession : public boost::enable_shared_from_this<WebsocketSession>{
public:
    WebsocketSession(boost::asio::io_service& io_service, WebsocketServer& server);

    tcp::socket& getSocket() { return socket_; } // <---  This
private:
    tcp::socket socket_;
    WebsocketServer& server_;
};

最佳答案

优势

该getter和setter将被内联,因此它们不会产生函数开销。

劣势

您将无法对getter和setter进行任何更改,而无需使用类重新编译所有代码。当您的类的实现位于其他DLL或.so文件中时,这尤其糟糕。

我个人不喜欢将getter和setter放在头文件中。

关于c++ - 在头文件中实现getter和setter方法,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/23366826/

10-10 17:26