意外的错误ID - 不确定原因(C ++)

时间:2016-10-27 02:04:46

标签: c++ c++11

我正在实现一个C ++程序,出于项目原因,它必须在一个文件中转换,所以我不能把你通常的东西放到一个单独的头文件中,它只是在我文件的顶部。我收到此错误

project1.cpp:194:12: error: expected unqualified-id
OrderOfOps(const std::string& in)
           ^
project1.cpp:194:12: error: expected ')'
project1.cpp:194:11: note: to match this '('
OrderOfOps(const std::string& in)

以下是有问题的代码行: 构造函数部分,它将是一个标题:

class OrderOfOps {
public:
    // Constructor
    OrderOfOps(const std::string& in);

private:
    std::string m_inString;
};

问题区域:

bool IsNumber(const std::string& num)
{
    std::string::const_iterator it = num.begin();

    // Look up locale method
    while (it != num.end() && std::isdigit(*it, std::locale())) {
        ++it;
    }

    return !num.empty() && it == num.end();
}

// Constructor
OrderOfOps(const std::string& in)
{
    m_inString = in;
}

1 个答案:

答案 0 :(得分:1)

虽然您无法将代码分离为头文件和源文件,但#include "header.h"只是进行纯文本插入,因此无论如何编译器本身都会看到相同的内容。你的问题是:

OrderOfOps(const std::string& in)

不是如何在类定义之外定义构造函数。你需要:

OrderOfOps::OrderOfOps(const std::string& in)