【问题标题】:How to load Class from another file - Visual Studio C++如何从另一个文件加载类 - Visual Studio C++
【发布时间】:2016-01-13 00:25:27
【问题描述】:

我必须在我的大学中使用 Visual Studio:main.cpp。

我的Node.h 文件

class Node {
public:
    Node();
    virtual ~Node();
};
Define Node

还有Node.cpp文件

#include "Node.h"

Implementation of Node {

}

Node::Node(){
}


Node::~Node(){
}

接下来我们有错误:

1> 节点.cpp

1>c:\users\konrad\documents\visual studio 2013\projects\lists\lists\node.cpp(3):错误 C2146:语法错误: 失踪 ';'在标识符“节点”之前

1>c:\users\konrad\documents\visual studio 2013\projects\lists\lists\node.cpp(3):错误 C4430:缺少类型 说明符 - 假定为 int。注意:C++ 不支持 default-int

1>c:\users\konrad\documents\visual studio 2013\projects\lists\lists\node.cpp(3):错误 C2146:语法错误: 失踪 ';'在标识符“的”之前

1>c:\users\konrad\documents\visual studio 2013\projects\lists\lists\node.cpp(3):错误 C2143:语法错误: 失踪 ';'在'{'之前

1>c:\users\konrad\documents\visual studio 2013\projects\lists\lists\node.cpp(3):错误 C2447:'{':缺少 函数头(旧式正式列表?)

我做错了什么?以及如何将 Node 类加载到main.cpp 之后?愚蠢的视觉。

【问题讨论】:

  • Implementation of Node 是什么?你不需要那个。只需在源文件中包含标题并编写定义即可。
  • Visual Studio 可能是也可能不是“哑巴”,但这有点来自认为Implementation of 是c++ 的人
  • 当我执行“添加 -> 类...”时,可视化生成这些文件
  • 那个的情况下我无语了“哑巴”
  • 比 Turbo C++ 更好的 Visual Studio。为什么不直接添加文件并手动输入代码?

标签: c++ visual-studio class visual-studio-2013 classloader


【解决方案1】:

您能否尝试将 .h 和 .cpp 编辑为如下所示:

我的Node.h 文件

#pragma once
class Node {
public:
    Node();
    virtual ~Node();
};

还有Node.cpp文件

#include "Node.h"

Node::Node(){
}


Node::~Node(){
}

【讨论】:

  • 我已经在 linux/mac/windows 上工作了 5 年。我认为 Xcode 是最好的(忘记过去几个月的崩溃和错误),然后是 Visual Studio,最后一个是我最喜欢的(vi 和 cmake)
【解决方案2】:

Visual Studio 提供了一个模板 和一些代码,这样您就不必输入那么多。代码不可编译,需要您修改。

“节点的实现”应视为注释。

有更好的代码生成工具,上网搜索一下。

Visual Studio 无法编写所有 Node 类,因为它无法读懂您的想法。

在某些时候,您将不得不输入。

我强烈建议您开发自己的模板,以便您可以使用编辑器并执行“全局替换”。同样,不要期望替换是 100% 完美的;目的是节省一些打字时间。

编辑 1:
请记住,Visual Studio 使用 Microsoft 编码风格创建的文件可能与您的风格不一致。

【讨论】:

  • 谢谢,我现在知道它是如何工作的了。我是新手,现在从 Studio 开始:
猜你喜欢
  • 2018-06-17
  • 1970-01-01
  • 2011-08-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-06-06
  • 2012-04-29
相关资源
最近更新 更多