未明确引用" Str :: ToInt(unsigned char *)"

时间:2013-12-15 18:27:33

标签: c++ namespaces undefined-reference

我在我的库中添加了一个新函数,在编译Gcc时拒绝识别它。 每个函数都可以正常运行,这是唯一能给出问题的函数。

String.hpp

#ifndef __String_Included__
#define __String_Included__

namespace Str
{
    //Other prototype
    int ToInt(unsigned char*);
};
#endif

String.cpp

int ToInt(unsigned char* Source)
{
    //Codecodecodecodecodecodecode
}

当我在主要调用Str :: ToInt时,我得到了那个错误。 我正在使用Codeblocks 12.11和Windows 8

1 个答案:

答案 0 :(得分:2)

您将Str::ToInt()声明为命名空间Str的成员,但您在任何具有相同名称ToInt()的命名空间之外定义了一个函数。您至少需要在定义前面Str::

int Str::ToInt(unsigned char* Source) { ... }