【问题标题】:c++ use default functions in class with same namec ++在具有相同名称的类中使用默认函数
【发布时间】:2014-10-16 15:14:54
【问题描述】:

像这样在 c++ 中实现一个类的好方法是什么:

Someclass.h:

class SomeClass
{
    public:
       SomeClass();
       void kill();
}

Someclass.cpp:

SomeClass::kill(){
    kill();//This would cause an infinit recursion
           //How to fix it?
}

所以我想要做的是在我的对象中重新声明一个函数作为方法。 我找不到包含“kill()”、“sleep(int sec)”的名称空间或类似的东西。 希望你能帮忙。

【问题讨论】:

  • 使用范围解析运算符来解析范围。顺便说一句,你的评论是错误的。这是无限递归。
  • “这里显然会抛出一个无法调用成员函数的错误”——不,它会递归调用SomeClass::kill 和核心转储。
  • 是的,因为你是对的......我不应该只是粘贴我的试用版;)更新它

标签: c++ function object redeclare


【解决方案1】:
SomeClass::kill(){
    ::kill();
}

:: 访问全局范围

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-03-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-11-24
    • 2011-09-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多