小编Ale*_*qué的帖子

C++标题包含

我正在研究一个项目,每个头文件都有一个预处理器包括后卫.我的包含是这样的:

(文件 - >包括)

main.cpp - > header.h; Character.h

header.h - > vector,iostream,...,DataFiles.h

Character.h - > DataFiles.h,header.h,CharFrame.h

CharFrame.h - > DataFiles.h,header.h

一切都很好.但是,如果我只是删除main.cpp的#include"Character.h"来移动它在header.h中,我在编译时会遇到很多错误.现在它是:

main.cpp - > header.h

header.h - > ...,DataFiles.h,Character.h.

有什么不同?

这是我的编译器输出:

Inspiron-1545:~/Desktop/LF2_linux$ g++ -Wall main.cpp DataFiles.cpp header.cpp Character.cpp CharFrame.cpp -lSDL -lSDL_image -lSDL_ttf -o test
In file included from header.h:13:0,
             from CharFrame.h:12,
             from CharFrame.cpp:1:
Character.h:55:15: error: ‘CharFrame’ was not declared in this scope
Character.h:55:25: error: template argument 1 is invalid
Character.h:55:25: error: template argument 2 is invalid
Run Code Online (Sandbox Code Playgroud)

如果include被放回main.cpp,那么它编译时没有任何错误.

如果您觉得我的代码是必要的,我将编辑此帖并粘贴所有内容.

以下是感兴趣的行: …

c++ header include

3
推荐指数
1
解决办法
227
查看次数

使用javascript重新加载php页面

我在php页面中画了一个棋盘.每件都设置为可拖动,每个瓷砖都可以放置.一旦一块被放在一块瓷砖上,我想重新加载php页面,这样就可以重新绘制新的位置.我该怎么做:用javascript重新加载php页面,而不显示要求确认的窗口,例如"要显示此页面,Firefox必须发送将重复之前执行的任何操作(如搜索或订单确认)的信息. - >取消;重新发送"?

或许还有更好的解决方案?

javascript php

2
推荐指数
1
解决办法
1万
查看次数

c ++前向声明和不完整类型

你好,我在使用前向声明时遇到了麻烦.我无法访问转发的类函数,但我需要这样做.

这是我的Window.h:

#include "Tab.h"  // Needed because Window will create new Tabs

class Window {
  public:
    ...
    void doSome();

};
Run Code Online (Sandbox Code Playgroud)

这是Tab.h:

class Window;  // forward delcaration

class Tab {

public:
  class Tab(Window *parent);
  void callParentFunction();

private:
  Window *m_parent;
};
Run Code Online (Sandbox Code Playgroud)

最后,Tab.cpp:

#include "Tab.h"

Tab::Tab(Window *parent) {
  m_parent = parent;
}

Tab::callParentFunction() {
  m_parent->doSome();  // Error
}
Run Code Online (Sandbox Code Playgroud)

编译器返回以下错误:无效使用不完整类型'struct Window'

如何知道它已经包含Tab.h来创建标签,我如何访问父节点的功能?如果我不能,你建议我做什么?

c++ circular-dependency forward-declaration incomplete-type

2
推荐指数
1
解决办法
622
查看次数