Делаю так:
static TFixedArray<TFixedArray<TInt, 12>, 16> ScreenMatrix;
карбид выдает еррор:
Undefined symbol: 'class TFixedArray<class TFixedArray<int, 12>, 16> Cengine::ScreenMatrix
Подскажите пожалуйста что не так?
Делаю так:
static TFixedArray<TFixedArray<TInt, 12>, 16> ScreenMatrix;
карбид выдает еррор:
Undefined symbol: 'class TFixedArray<class TFixedArray<int, 12>, 16> Cengine::ScreenMatrix
Подскажите пожалуйста что не так?
тебе нужно объявить ScreenMatrix еще раз в .cpp-файле (так как это так сказать "глобальная" переменная, не принадлежащее классу. Описание её в классе просто ограничивает видимость этой переменной, но не выделяет память под переменную)
файл Cengine.cpp:
...
TFixedArray<TFixedArray<TInt, 12>, 16> Cengine::ScreenMatrix;
...
но я бы объявил так:
TInt ScreenMatrix [12][16];
Объяснение тут: [10:11]
http://faqs.org.ru/progr/c_cpp/cpp_lite3.htm
Last edited by wl123; 2009-08-13 at 15:07.
Пользоваться одномерным массивом, размером x*y;
Вычисление индекса x+y*width;
Доброе утро
В подключаемом инклюд файле класса
class Logic : public CBase
{
---//----
---//----
---//----
public:
TInt iArrayCells[MAXIMUM_NUMBER_ROW][MAXIMUM_NUMBER_ROW];
---//----
---//----
---//----
};
в cpp файле вычисляете индексы, как вам удобнее. И работаете.