当前位置:  开发笔记 > 编程语言 > 正文

C++类成员函数命名规则

如何解决《C++类成员函数命名规则》经验,为你挑选了1个好方法。

我正在尝试将C套接字库中的一些函数封装到我自己的C++类中.我想定义一个成员函数,它使用与其相应的C函数相同的名称,但具有不同的签名.例如,我想写这个函数

ssize_t MyClass::write(const void *buf);

打电话给

ssize_t write(int fd, const void *buf, size_t count);

当我编译时,我得到以下错误

error: no matching function for call to ‘MyClass::write(int&, const char*&, size_t)’
note: candidates are: ssize_t MyClass::write(const char*)

我有正确的#include语句来调用C套接字库,但我对write函数的定义似乎是在影响它.如果我将我的类定义函数的名称更改为其他内容,那么一切似乎都能正常工作.

我有理由相信,更改我的函数名称将成为我的最终解决方案,但有人可以告诉我导致此行为的C++命名规则的名称吗?我想阅读它,所以我知道我将来在做什么.



1> UncleZeiv..:

您是否尝试过调用C函数来解释它是否存在于全局命名空间中,例如:: write?

推荐阅读
N个小灰流_701
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有