【问题标题】:Some questions about functions with a class type关于类类型函数的一些问题
【发布时间】:2019-11-30 14:42:46
【问题描述】:

所以我正在使用 C++ 并尝试使用类。我正在尝试创建一个具有类类型的函数。代码如下:

struct action{
void setup(std::string){
/*...*/
}
};
action move(){
setup("*");//<-error:[use of undeclared identifier 'setup']
}

类的实例函数可以访问其成员函数和对象吗?另外,它应该返回什么?我是否必须创建一个单独的动作实例才能返回?可以和action move有关吗?谢谢!

【问题讨论】:

  • move() 不是action 结构的成员。
  • 听起来你可以使用good C++ book
  • 可能有action move() { action result; result.setup("*"); return result; }
  • 谢谢,@Eljay 现在我明白了函数和对象之间的区别
  • 那么,除了可以返回action之外,使用action作为函数类型有什么好处呢?它可以在调用action move 时使用任何成员函数,例如。 move().wait();?

标签: c++ function class member member-access


【解决方案1】:

对于初学者来说,函数setupaction 类的非静态成员函数。它可以应用于类的对象。而函数move虽然返回类型为action,但什么也不返回。

函数move可以是这样的

action move()
{
    action a;

    a.setup("*");

    return a;
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-08-19
    • 2017-05-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多