C++ 错误C2039:&x27;获取“任务动态”';:不是'`全局命名空间';
我得到这个错误 错误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.hppC++ 错误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
#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++。是否需要进行任何设置以公开隐藏的错误消息?