小编Pro*_*yon的帖子

对C++头文件的基本了解

我有一个理论问题而不是错误报告.

我是一名新手C++程序员,试图将其推广

使用VC++ VS2008编译器

我经常发现自己想知道为什么我想在头文件中采取一些行动.

例如,看看这个代码块:

#include "DrawScene.h"
#include "Camera.h"
#include "Player.h"
#include "Grid.h"
#include "InputHandler.h"
#include "GameState.h"

class Controller
{
public:
private:
public:
 Controller();
 ~Controller(){}
 void Update();

private:
};
Run Code Online (Sandbox Code Playgroud)

和连接CPP文件,controller.cpp一起

#include "stdafx.h"
#include "glut.h"
#include "Controller.h"
#include <iostream>

Grid* grid_ptr = new Grid();
InputHandler* inputHandler_ptr = new InputHandler();
DrawScene* drawScene_ptr = new DrawScene();
GameState* gameState_ptr = new GameState();

Controller::Controller()
{

}

void Controller::Update()
{

}
Run Code Online (Sandbox Code Playgroud)

什么是决定哪些包括去哪里的好方法?到目前为止,我一直在使用"无论什么工作"的方法,但我发现它有点不专业.

现在即使你可以说我的代码有X语法错误和设计缺陷,请这样做,但重点我会欣赏有关使用.h VS .cpp文件的信息.

为什么还有这样的设计呢?在制作任何基于OOP的C++程序时,总是会轻易踩着什么是陷阱和陷阱?

是什么引发了这个问题,因为我想通知读者头文件中存在控制器中存在的对象,但是如果不将它们设置为静态,则分配这些未初始化的对象似乎是不可能的.

注意:我源于C# - > C++,可能有助于了解.这就是我对代码的看法.

提前谢谢您的努力!

编辑:26/08/2010 18:16

所以构建时间是良好包含的本质.还有更多需要谨慎吗?

c++ header-files

6
推荐指数
2
解决办法
2561
查看次数

我试图在头文件中创建一个失败的对象数组(启动C++程序员)

以下编辑更新!!! 感谢您的帮助,请务必指出所有错误,我不在乎是否听起来粗鲁或卑鄙,或者其他什么,emo垃圾.直接把它给我,这样我就可以理解出了什么问题.

嗨,大家好!

我是一名新手C++程序员,试图学习并获得一些C++的IRL exp.

我在VC++(vs2008)编译器中尝试以下内容:

typedef unsigned short USHORT;

class Grid  
{  
...
public:  
    Grid()  
    {  
        Tile[36]* tileList_ptr;
    }  
...
};
Run Code Online (Sandbox Code Playgroud)

从本质上讲,我想放入36个瓷砖,将它们撞到一个漂亮整齐的数组中,以便在8x8的游戏区域中大小不变.像棋盘一样.用指针引用它们,如果需要,在相关的cpp文件中摆弄它们.

如果你现在没有笑到这个尝试,那么我可能会出现语法错误,而不是主要的设计缺陷:P

任何帮助将非常感激!

提前致谢

编辑24/08/2010 13:49(开始时间)

我的代码现在如下例子:

Grid Header文件Grid.h:

#include "Tile.h"

class Grid
{

//no more typedef used

public: 
    Tile grid[8][8];

private:    
    unsigned short selectedItemIndexValue;
public:
    Grid()
    {

        Initialize();       
    }
    ~Grid(){}

    void Update();
    void FinalizeMove(unsigned short index);
    void Draw();

private:
    void Initialize(); //Initializes members
};
Run Code Online (Sandbox Code Playgroud)

Grid.cpp文件:

#include "stdafx.h"   
#include "Grid.h"   
//Not tile , that used to give me …
Run Code Online (Sandbox Code Playgroud)

c++ arrays pointers header object

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

关于堆清理的C++约定的理论,建议的构建,这是一个好的做法吗?

我有另一个理论问题,因为标题建议它是评估代码的构建.基本上我在考虑到处使用这个模板.

我使用的是VC++ VS2008(包括所有内容)

Stapel.h

class Stapel
{
public:
    //local vars
    int x;

private:
public:
    Stapel();
    Stapel(int value);
    ~Stapel(){}

    //getters setters
    void set_x(int value)
    {
        x = value;
    }

    int get_x(int value)
    {   
        x = value;
    }   

void CleanUp();

private:
};
Run Code Online (Sandbox Code Playgroud)

Stapel.cpp

#include "Stapel.h"

Stapel::Stapel()
{

}

Stapel::Stapel(int value)
{
    set_x(value);
}

void Stapel::CleanUp()
{
    //CleanUpCalls
}
Run Code Online (Sandbox Code Playgroud)

这里的重点是清理方法,基本上我想把这个方法放在我所有的文件中,只需要让它在需要时进行删除调用,以确保它在一个地方,我可以防止删除周围的飞行,作为一个新秀,即使我知道可能不是你想乱搞的东西,也不是一个草率的堆.

这个版本怎么样?

好坏 ?为什么?

那么使用析构函数来完成这些任务呢?

c++ conventions delete-operator

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