Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
char* n=m.getName();
我收到上述说明的以下错误Invalid arguments ' Candidates are: char * getName() '。我错过了什么?
Invalid arguments ' Candidates are: char * getName() '
char* Medicine::getName() { return this->name; }
nameis of 声明为char name[50];并且m是const Medicine& m
name
char name[50];
m
const Medicine& m
如果m是const,则只能const在其上调用方法。也许你可以改变你的方法
const
const char* Medicine::getName() const;
并像这样使用它:
const char* n=m.getName();
尽管您可能会考虑使用std::string数据成员而不是char.
std::string
char
请注意,如果成员变量是 const,则只有 const 成员函数可以访问它。与静态相同,即如果成员变量是静态的,则只有静态成员可以访问它。