2014-04-20 3 views
1

, поэтому я очень новичок в программировании на C++, поэтому заранее извиняюсь, если задаю что-то тривиальное. Мое назначение - добавлять, умножать и оценивать полиномы, где каждый член заданного многочлена представлен классом Node с частными переменными: double factor, int power и Node * next.Назначьте указатель одного объекта класса другому объекту класса C++

class Node{ 
private: 
double coef; 
int power; 
Node *next; 
public: blah 
} 

Головка для этого связанного списка (для каждого полинома), следует хранить в массиве объектов Poly, где единственной частной переменной в моем Poly классе Node * голова.

class Poly{ 
private: 
Node *head; 
public:poly functions; 
} 

Пользователь должен выбрать многочлен, что они хотят работать с помощью выбора элемента из моего полиномиального массива, и это даст голова к выбранному полиному.

poly_array[n]; 

Однако мой вопрос в настоящее время является то, что элемент этого массива объектов Poly, и я хочу, чтобы сделать его из класса Node, так что я на самом деле могу извлечь его содержимое класса и использовать этот метод, чтобы пробежать через узлы выбранного полинома (ов). Это код, который я пытался реализовать, чтобы выполнить эту работу, но мой вызов функции преобразования poly возвращает мусор. Я теряюсь относительно того, какой метод я должен попробовать дальше. Заранее спасибо. Здесь я пытаюсь сначала перенести многочлен, чтобы отобразить его содержимое.

void init_polydisplay(vector<Poly*> polynomial_array, int numofpolys) 
{ 
Poly *polyobject; 
Node *polyhead; 

for (int n = 0; n < numofpolys; n++) 
{ 
    temp3.getnodehead(); 
    polyhead=polyobject->convertPoly(polynomial_array[n]); 
} 
} 

Моя попытка попытаться вернуть Узел * по сравнению с головкой полинома.

Node* Poly::convertPoly(Poly* tmp) 
{ 
return (Node *) tmp; 
} 

ответ

0

Вы можете определить get_head() функцию в Poly

class Poly{ 
private: 
Node *head; 
public: 
Node * get_head() 
    { 
     return head; 
    } 
}; 

и использовать его таким образом:

polyhead = polynomial_array[n]->get_head(); 
+0

Я ценю вашу помощь в значительной степени. Это именно то, что мне нужно! Это должно привести меня к правильному пути. – user3552998

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