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

Pro*_*yon 2 c++ arrays pointers header object

以下编辑更新!!! 感谢您的帮助,请务必指出所有错误,我不在乎是否听起来粗鲁或卑鄙,或者其他什么,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 a class redefinition error

unsigned short selectedItemIndexValue;

//No more typedef used

void Grid::Update()
{
    //Respond to controller commands
}

void Grid::FinalizeMove(unsigned short index)
{

}

void Grid::Draw()
{

}

void Grid::Initialize()
{
    for(int i = 0; i < 4; i++)
    {
        Grid::grid[i] = new Tile::Tile(10,10);   // ATTEMPT AT FILLING ARRAY
    }
}
Run Code Online (Sandbox Code Playgroud)

Tile.h文件

class Tile
{       
public:

private:
    enum TileOccupation
    {
        EmptyTile = 0,
        WhiteSphere = 1,
        BlackSphere = 2
    };

    unsigned short horizontalDimensions;
    unsigned short verticalDimensions;

public:
    Tile(){}    
    ~Tile(){}

void Update();
void Draw();

};
Run Code Online (Sandbox Code Playgroud)

Tile.cpp文件:

#include "stdafx.h"
#include "Tile.h"

void Tile::Update()
{

}

void Tile::Draw()
{

}
Run Code Online (Sandbox Code Playgroud)

在Grid.cpp中填充数组的尝试是通过编译器返回以下错误消息:"错误1错误C2061:语法错误:标识符'{ctor}'"

MSDN帮助我给了我这个:

"编译器错误C2061.编译器找到了一个不需要它的标识符.确保在使用它之前声明了标识符."

我没有分析它的含义.我究竟在这做错了什么?还有什么其他问题可以在我的项目中找到?所有的帮助和评论将不胜感激.假设我知道0%的C++

Bla*_*rad 6

@ user428435.三件事:

  1. 8x8是64,而不是36
  2. 你有什么问题?如果编译错误,错误是什么?经常仔细阅读错误可以帮助您解决问题.如果代码编译并运行,那么您不希望它做什么呢?
  3. 你可能意味着

    Tile*tileList_ptr [36];