变量 作用域 class Addr { public: std::string Network(); std::string String(); private: std::string Addr_; }; class Listener { protected: Listener(){}; ~Listener(){}; public: virtual Conn *Accept() = 0; virtual bool Close() = 0; virtual Addr Addr() = 0; }; 上面的代码中,Listener::Addr的名字和返回值都是Addr,这样为什么是可以的? 30分 Listener::Addr的名字是Listener::Addr,而不是Addr。 10分 作为函数的时候,是Listener的Addr,就是Listener::Addr,返回值就是class Addr,编译器是这样分辨的 C语言里面还经常这样写:struct timeval timeval; 前一个是结构体名字,后面是变量名字,唉 窃以为不是好的编码风格 CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明函数名的一个问题! 喜欢 (0)赏[1034331897@qq.com]分享 (0)