Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/oop/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 错误C2039:&x27;获取“任务动态”';:不是'`全局命名空间';_C++_Oop - Fatal编程技术网

C++ 错误C2039:&x27;获取“任务动态”';:不是'`全局命名空间';

C++ 错误C2039:&x27;获取“任务动态”';:不是'`全局命名空间';,c++,oop,C++,Oop,我得到这个错误 错误2错误C2039:“get_quest_dynstr”:不是“`global”的成员 命名空间“”e:\phase3a\tdisk\workspace\cbs\source\cbs\schedapp\source\treesearch.cpp 17 1 schedapp 错误3错误C2039:“CheckCommand”:不是“`global”的成员 命名空间“”e:\phase3a\tdisk\workspace\cbs\source\cbs\schedapp\source

我得到这个错误

错误2错误C2039:“get_quest_dynstr”:不是“`global”的成员 命名空间“”e:\phase3a\tdisk\workspace\cbs\source\cbs\schedapp\source\treesearch.cpp 17 1 schedapp

错误3错误C2039:“CheckCommand”:不是“`global”的成员 命名空间“”e:\phase3a\tdisk\workspace\cbs\source\cbs\schedapp\source\treesearch.cpp 21 1 schedapp

编译C++应用程序时,

TreeSearchBox.hpp

#if !defined(TREE_SEARCH_BOX)
#define TREE_SEARCH_BOX

#include "standaloneconn.hpp"

class TREE_SEARCH_BOX : public STANDALONE_CONN
{
public: 
    TREE_SEARCH_BOX();
    virtual int get_quest_dynstr(int idquest, LPTSTR opstr, PDYNOBJ dynpobj);
    virtual int CheckCommand(PBASEWND pwnd, int idItem, HWND hwndCtl, int wNotifyCode, int indx);
    virtual LPTSTR  get_classname(){return _TEXT("TREE_SEARCH_BOX");}
};

#endif
#include "cpptot.hpp"
#include "apptot.hpp"
#include "TreeSearchBox.hpp"
#include "lov.hpp"


//******************************************************************************
// Component: IFS/Scheduling
//
// File name: TreeSearchBox.cpp
// 
// Purpose:   Contains an object for connecting a standalone client directly to ORACLE
//              
// Ver          Date        Sign    History
// ---          ----        ----    -------
//              150604      FARFLK  Adding tree search functioanlity enhanced
//******************************************************************************    
int TREE_SEARCH_BOX::get_quest_dynstr(int idquest, LPTSTR opstr, PDYNOBJ dynpobj){
    return 0;//get_quest_dynstr(idquest, opstr, dynpobj);
}

int TREE_SEARCH_BOX::CheckCommand(PBASEWND pwnd, int idItem, HWND hwndCtl, int wNotifyCode, int indx){
    return 0;
}
树搜索框.cpp

#if !defined(TREE_SEARCH_BOX)
#define TREE_SEARCH_BOX

#include "standaloneconn.hpp"

class TREE_SEARCH_BOX : public STANDALONE_CONN
{
public: 
    TREE_SEARCH_BOX();
    virtual int get_quest_dynstr(int idquest, LPTSTR opstr, PDYNOBJ dynpobj);
    virtual int CheckCommand(PBASEWND pwnd, int idItem, HWND hwndCtl, int wNotifyCode, int indx);
    virtual LPTSTR  get_classname(){return _TEXT("TREE_SEARCH_BOX");}
};

#endif
#include "cpptot.hpp"
#include "apptot.hpp"
#include "TreeSearchBox.hpp"
#include "lov.hpp"


//******************************************************************************
// Component: IFS/Scheduling
//
// File name: TreeSearchBox.cpp
// 
// Purpose:   Contains an object for connecting a standalone client directly to ORACLE
//              
// Ver          Date        Sign    History
// ---          ----        ----    -------
//              150604      FARFLK  Adding tree search functioanlity enhanced
//******************************************************************************    
int TREE_SEARCH_BOX::get_quest_dynstr(int idquest, LPTSTR opstr, PDYNOBJ dynpobj){
    return 0;//get_quest_dynstr(idquest, opstr, dynpobj);
}

int TREE_SEARCH_BOX::CheckCommand(PBASEWND pwnd, int idItem, HWND hwndCtl, int wNotifyCode, int indx){
    return 0;
}

我为如何纠正这个错误挣扎了很长时间。请帮帮我。我做错了什么?

开始时,您有一个防护块:

这很好。但它确实意味着你调用
#define TREE\u SEARCH\u BOX
,这意味着
TREE\u SEARCH\u BOX
被定义为无。因此,在编译时,预处理器会扫描文件,并将
树搜索框
替换为
。这破坏了您的代码,因为您现在正试图编译:

int ::get_quest_dynstr(int idquest, LPTSTR opstr, PDYNOBJ dynpobj){ ...
其中::表示
全局命名空间

有两种方法可以解决此问题:

  • 更换你的防护栏

     #if !defined(TREE_SEARCH_BOX_SOMETHING_ELSE)
     #define TREE_SEARCH_BOX_SOMETHING_ELSE
    
  • 更改您的类名


我发现有趣的是,您不会因为您也尝试编译以下内容而出错:

class  : public STANDALONE_CONN{
但事实证明,您可以像这样定义一个匿名类:

class : baseClass {

  //bla
};

我想我今天学到了一些东西:)

一开始你有一个防护栏:

这很好。但它确实意味着你调用
#define TREE\u SEARCH\u BOX
,这意味着
TREE\u SEARCH\u BOX
被定义为无。因此,在编译时,预处理器会扫描文件,并将
树搜索框
替换为
。这破坏了您的代码,因为您现在正试图编译:

int ::get_quest_dynstr(int idquest, LPTSTR opstr, PDYNOBJ dynpobj){ ...
其中::表示
全局命名空间

有两种方法可以解决此问题:

  • 更换你的防护栏

     #if !defined(TREE_SEARCH_BOX_SOMETHING_ELSE)
     #define TREE_SEARCH_BOX_SOMETHING_ELSE
    
  • 更改您的类名


我发现有趣的是,您不会因为您也尝试编译以下内容而出错:

class  : public STANDALONE_CONN{
但事实证明,您可以像这样定义一个匿名类:

class : baseClass {

  //bla
};

我想我今天学到了一些东西:)

一开始你有一个防护栏:

这很好。但它确实意味着你调用
#define TREE\u SEARCH\u BOX
,这意味着
TREE\u SEARCH\u BOX
被定义为无。因此,在编译时,预处理器会扫描文件,并将
树搜索框
替换为
。这破坏了您的代码,因为您现在正试图编译:

int ::get_quest_dynstr(int idquest, LPTSTR opstr, PDYNOBJ dynpobj){ ...
其中::表示
全局命名空间

有两种方法可以解决此问题:

  • 更换你的防护栏

     #if !defined(TREE_SEARCH_BOX_SOMETHING_ELSE)
     #define TREE_SEARCH_BOX_SOMETHING_ELSE
    
  • 更改您的类名


我发现有趣的是,您不会因为您也尝试编译以下内容而出错:

class  : public STANDALONE_CONN{
但事实证明,您可以像这样定义一个匿名类:

class : baseClass {

  //bla
};

我想我今天学到了一些东西:)

一开始你有一个防护栏:

这很好。但它确实意味着你调用
#define TREE\u SEARCH\u BOX
,这意味着
TREE\u SEARCH\u BOX
被定义为无。因此,在编译时,预处理器会扫描文件,并将
树搜索框
替换为
。这破坏了您的代码,因为您现在正试图编译:

int ::get_quest_dynstr(int idquest, LPTSTR opstr, PDYNOBJ dynpobj){ ...
其中::表示
全局命名空间

有两种方法可以解决此问题:

  • 更换你的防护栏

     #if !defined(TREE_SEARCH_BOX_SOMETHING_ELSE)
     #define TREE_SEARCH_BOX_SOMETHING_ELSE
    
  • 更改您的类名


我发现有趣的是,您不会因为您也尝试编译以下内容而出错:

class  : public STANDALONE_CONN{
但事实证明,您可以像这样定义一个匿名类:

class : baseClass {

  //bla
};


我想我今天学到了一些东西:)

也许你遗漏了一些必需的东西,包括第17行和第22行的内容?你没有展示这些。这些都是简单的评论。我把它们添加到问题中。也许你遗漏了一些必要的内容,包括第17行和第22行的内容?你没有展示这些。这些都是简单的评论。我把它们添加到问题中。也许你遗漏了一些必要的内容,包括第17行和第22行的内容?你没有展示这些。这些都是简单的评论。我把它们添加到问题中。也许你遗漏了一些必要的内容,包括第17行和第22行的内容?你没有展示这些。这些都是简单的评论。我把它们添加到问题中。事实证明,这种情况发生得更频繁。仅针对
错误:抽象声明符“”用作声明
,您会发现许多类似的情况;)但是,编译器不会给出这个错误(是VisualC++)吗?是的,它是Visual C++。我需要做什么设置来暴露隐藏的错误消息呢?事实证明,这种情况发生得更频繁。仅针对
错误:抽象声明符“”用作声明
,您会发现许多类似的情况;)但是,编译器不会给出这个错误(是VisualC++)吗?是的,它是Visual C++。我需要做什么设置来暴露隐藏的错误消息呢?事实证明,这种情况发生得更频繁。仅针对
错误:抽象声明符“”用作声明
,您会发现许多类似的情况;)但是,编译器不会给出这个错误(是VisualC++)吗?是的,它是Visual C++。我需要做什么设置来暴露隐藏的错误消息呢?事实证明,这种情况发生得更频繁。仅针对
错误:抽象声明符“”用作声明
,您会发现许多类似的情况;)但是,编译器不会给出这个错误(是VisualC++)吗?是的,它是Visual C++。是否需要进行任何设置以公开隐藏的错误消息?