c++静态函数未找到

标签 c++ static function

我在类里面定义了这个函数。

.hpp 文件:

class SomeClass
{
public:

static string DoStuff(string s);

};

.cpp 文件:

#include "header.hpp"

string SomeClass::DoStuff(string s)
{
// do something
}

编译器说:

**error C2039: 'DoStuff' : is not a member of 'SomeClass'**

有人可以帮忙吗?

编辑: 实际违规代码

标题定义

  class DDateTime{  
public:
static string date2OracleDate(DATE Date);
}


string DDateTime::date2OracleDate(DATE Date)
{
    string s;
    s="TO_DATE('" + DDateTime::DateFormat("%d/%m/%Y",Date) + "','dd/MM/YYYY')";
    return s;
}

最佳答案

通常,.cpp 文件必须包含匹配的.h.hpp 文件。

这里是这样吗?

您还可能遇到命名空间问题(.cpp 文件中缺少命名空间或命名空间之外的静态方法定义,等等。)

实际上,在我们拥有真正的破解代码之前,很难回答。


此外,我不知道这是否是示例代码,但您似乎在头文件中使用了类似 using std::stringusing namespace std 的东西.

这是个坏主意,因为它会污染包含您的 header 的每个文件。如果有人想使用您的头文件但不想“使用”std,因为 string 是其中一个类的名称怎么办?

关于c++静态函数未找到,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3111072/

相关文章:

c# - C# 委托(delegate)是否像 Excel/用户定义函数一样工作?

c++ - 我可以在 OpenGL (C++) 的缓冲区中混合数据类型吗?

c++ - 将 Vector * 转换为 char *

c++ - 如何在c++的make文件中添加指令

c++ - 调用 Singleton getInstance() 时出现 undefined symbol 错误

javascript - 在 Javascript 处理中的其他函数中创建一个 draw() 函数

c++ - 用 C++ 在桌面上叠加图像

c# - 静态类中静态方法中的变量

java - 从内部类到外部接口(interface)的非静态访问的基本障碍

javascript - 具有多个参数的 JQuery 自定义函数不起作用