2014-04-20 165 views
1

所以我对C++编程非常陌生,所以如果我提出一些琐碎的事情,我会事先道歉。我的任务是添加,乘法和评估多项式,其中指定多项式的每个项由具有私有变量的Node类表示:double系数,int power和next * next。将一个类对象的指针分配给另一个类对象C++

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

头部到该链表(对每个多项式),是将被存储在多边形对象的阵列,其中在我的聚类的唯一私有变量是节点*头。

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

的用户选择他们想要从我的多项式阵列中选择一个元素与之合作的多项式,这将给头到选定的多项式。

poly_array[n]; 

但是我现在的问题是,这个数组的元素是对象保利,我想使类节点的,所以我其实可以提取类的内容,并使用该方法通过节点横向的选定多项式。 这是我试图实现这个工作的代码,但是我的函数调用了convert 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 *而不是多项式的头部。

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

回答

0

可以在Poly

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

定义get_head()功能,使用这种方式:

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

我非常感谢你的帮助。这正是我需要的!这应该让我走上正确的道路。 – user3552998

相关问题