【问题标题】:Declaring vectors in a C++ header file在 C++ 头文件中声明向量
【发布时间】:2010-11-19 23:37:34
【问题描述】:

我正在制作的 C++ 类的头文件中的向量声明存在一些问题。我的整个头文件如下所示:

#ifndef PERSON_H
#define PERSON_H

#include "Message.h"
#include <string>
#include <vector>


class Person {

public:

 Person() {};
 Person(std::string emailAddress);

private:

 vector<Message> inbox;
 vector<std::string> contacts;
 std::string emailAddress;

};

#endif PERSON_H

我的错误发生在“私人”声明(我声明我的向量)之后的行上。我得到的错误是 C4430 - 缺少类型说明符和 C2238 - ';'之前的意外标记

感谢您的帮助。

【问题讨论】:

  • 答案已经找到,问题是程序员疏忽造成的。感谢您的反馈,很抱歉在这个网站上发布这样一个愚蠢的问题。
  • 你不喜欢编译器错误是多么无用吗,经过 5 年的 C/C++ 它几乎已成为第二天性,但在使用 java 一段时间后,它就会发现编译器错误是多么无用。
  • 我不认为这很愚蠢。我对 C++ 很陌生,我也犯了同样的错误,所以这正是我所需要的!

标签: c++ vector


【解决方案1】:

您缺少命名空间:

std::vector

【讨论】:

  • Arg,我觉得自己像个笨蛋。感谢您向我指出这一点,也很抱歉大家用这么愚蠢的问题堵塞了网站。
  • 与这里的许多问题相比,这并不是愚蠢:)你没有把using namespace std;加分:)
  • 哈,我会接受的。 :P 因为你先回答,所以我会给你绿色检查。
【解决方案2】:

你需要把'std::'放在'vector'之前,就像你对字符串做的那样。

【讨论】:

  • 啊,当然。呸,现在觉得自己好傻。感谢您的帮助!
【解决方案3】:

在我的情况下,添加命名空间不起作用,但是,我错过了

#include <vector>;

【讨论】:

  • 应该是#include &lt;vector&gt;(不带分号)
猜你喜欢
  • 1970-01-01
  • 2012-08-17
  • 2021-12-28
  • 1970-01-01
  • 1970-01-01
  • 2021-11-24
  • 1970-01-01
  • 1970-01-01
  • 2013-08-04
相关资源
最近更新 更多