2012-04-11 2 views
0

Я получаю эту ошибку у конструктора моей структуры. почему я получаю его, так как работает только с * указателями, а не **.Ошибка структуры Dyanmic, преобразование указателей

Ошибка:

\ListStruc.cpp:26:25: error: cannot convert 'int**' to 'int*' in assignment 

struct.h

struct Arr{ 

    int days; 
    int *M; 
}; 
typedef Arr* Array; 

struct.cpp

void constr(Array &o){ 
    //Construct of 1*31 Matrix 
    o=new Arr; 
    o->days = days; 
    o->M = new int*[o->days]; 

ответ

3

Поскольку M является int*, правильная инициализация будет:

o->M = new int[o->days]; 
+0

thanks>.> Как я могу инициализировать массив с объектами класса i get error int can not быть преобразованным в Expre, expe beeing my class. –

+0

@BogdanMaier Я буквально ничего не понял, что ты только что сказал. –

+0

i исправлена ​​ошибка. Теперь я с нетерпением жду, чтобы сделать этот массив, массив объектов класса, я должен объявить в конструкторе/заголовке, который или как я должен делать это, поскольку классы arent типов, и я не знаю, как это сделать? –

Смежные вопросы