我有两个类:poly和Node。 我创建一个链接的节点列表,然后我想创建一个新的多边形对象,其中包含指向我的第一个Node对象的指针。

这是调用代码:

poly *polyObj = new poly(head);

我已经测试了我的代码,并确认“head”包含节点的链接列表,head也被声明为Node *。

以下是类定义:

class poly
{
  private:
    Node *start;  
  public:
    poly(Node *head)
    {
      start = head;
    }
};

class Node
{
   private:
    double coeff;
    int exponent;
    Node *next;

  public:
    Node(double c, int e, Node *nodeobjectPtr)
    {
      coeff = c;
      exponent = e;
      next = nodeobjectPtr;
    }
};

我不明白为什么我不能将Node *传递给我的poly构造函数。

===============>>#1 票数:4 已采纳

我不明白为什么我不能将Node *传递给我的poly构造函数!

因为poly需要知道Node是一种类型。 您可以通过前向声明来实现:

class Node; // fwd declaration

class poly
{
private:
    Node *start;    
public:
  poly(Node *head)
  {
    start = head;
  }
};

或者,您可以在poly的定义之前放置Node类定义。

  ask by user3554066 translate from so

未解决问题?本站智能推荐:

1回复

C ++-类构造函数创建对象,但构造结果不同

我在C ++中有一个课堂项目。 目的是在插入链表时对电话簿(txt文件)进行排序。 这些是类: 然后,函数NewLinkPerson如下所示: 问题在于创建的对象不是我命令他创建的程序的对象。 如果我在构造函数中输出类型为Person的对象pers ,它将填充我询问的数
2回复

使用自定义构造函数将对象实例化为类属性(C ++)

我正在使用C ++编写标准的《战舰》游戏,其中的Game对象包含两个Player对象。 当我尝试实例化Game构造函数中的Player对象时,IntelliSense给了我两个错误: IntelliSense:表达式必须是可修改的左值 IntelliSense:不存在合适的构
2回复

如何使用构造函数在另一个类中创建对象?

因此,我正在研究以模块化方式设计的代码。 现在,我的一堂课; 名为Splash必须创建另一个类的对象,称为Emitter 。 通常,您只需要创建对象并完成操作即可,但这在这里不起作用,因为Emitter类具有自定义构造函数。 但是当我尝试创建对象时,它不起作用。 举个例子;
1回复

可以使用类对象调用构造函数Initializer字段吗,C ++

我有两个班,一个“银行”和一个“帐户”。 Account的构造函数采用int和字符串。 银行应该在其中有两个类型为“帐户”的对象。 是否可以在字段初始值设定项列表中动态分配两个“帐户”对象,而不是为其分配静态值? 这是我拥有的静态分配代码 是否有可能做到这一点? 我希望构造
2回复

将对象传递给另一个类的构造函数

我有两个目的, data是大量的数据(杜)和node ,我打算在一个树,其中每个节点包含数据使用。 我想创建一个node构造函数,将data对象传递给它,但是出现以下错误: node.cpp: In constructor 'node::node(data&, std::vecto
2回复

C ++类构造函数/析构函数

我有下面的代码。 每次调用构造函数时,我都会增加一个计数器,而每次调用析构函数时,计数器都会减少。 实例化三个类对象后,我尝试打印出计数器值。 然后我尝试在删除对象之一后再次打印出计数器值。 期望值为4和3,但是我得到2和1。 我实际上尝试在构造函数和析构函数中打印出一些内容,以观
3回复

如何在C ++中声明一个对象,该对象具有另一个带有构造函数且带有参数的类的类数据

我正在创建一个简单的对象...但是 我找不到“语义方式”来创建具有Class作为数据的构造函数的对象,因此无法创建我的对象,即:
1回复

通过使用不同的构造函数创建类的实例

我有一个家庭作业问题,我不太了解。 将三个构造函数添加到类Critter中。 每个构造函数还应该在屏幕上打印一条简单的参考消息,以便可以看到何时调用了哪个构造函数。 您应该能够创建Critter类的实例1),而无需提供任何属性(应将名称设置为“默认小动物”,将高度设置为5,其余设置
2回复

全局对象构造函数未被调用

不知怎的,我的全局对象是在没有各自的构造函数的情况下创建的: 输出是: 我以前在不同的项目中使用了这样的构造函数,从未遇到过像这样的问题。 我已经尝试了无参数构造函数并使测试变量静态,没有任何不同的效果。 谁能告诉我这里发生了什么? 我正在使用visual studio
2回复

公开定义对象,但在构造函数中创建

我想做的事情与此(工作)类似: 但是我想用类而不是基本类型来实现。 我想在专用部分中定义该类(以便可以在所有对象上使用它),并在Wheel构造函数中执行AccelStepper构造函数。 我尝试了这两种解决方案,它们都给出不同的错误: 我如何才能实现自己的目标? 请注意