如何在另一个对象的构造函数中声明和创建对象?
how to declare and make objects inside another object's constructor?
我正在学习C 。我正在在另一个对象内部制作几个对象,但是编译器正在给出错误 - 无匹配的功能呼叫'grass :: grass()'。
这是"世界"对象的标题文件。在其中,我宣布了两个"草"对象: -
#ifndef WORLD_H
#define WORLD_H
#include "Grass.h"
using namespace std;
class World
{
public:
World();
private:
Grass g1;
Grass g2;
};
这是"世界"对象的CPP文件。在构造函数中,我试图制作"草"对象,但失败了。
#include "World.h"
#include <iostream>
using namespace std;
World::World()
{
g1(200, 200);
g2(300, 200);
}
您的语法是错误的。您正在寻找所谓的构造函数初始化列表。尝试(假设您有正确的Grass
构造函数的签名):
World::World() :
g1(200, 200),
g2(300, 200)
{
// Nothing
}
相关文章:
- 使用基类指针创建对象时,缺少派生类析构函数
- 如何在C++中获取该对象的类声明中对象的地址?
- 如何创建对象函数指针C++映射?
- C++创建对象数组
- 在 C++ 中声明 const 对象需要用户定义的默认构造函数.如果我有一个可变成员变量,为什么不呢?
- 在 C++ 的 Switch Case 中创建对象后对对象调用方法
- 如何获取在 main() 函数中构造的类的创建对象?
- 如何为非类型模板声明指向对象的指针?
- 基于文件中的条目创建对象
- 错误:创建对象后无法分配区域
- C++ 通过输入创建对象
- 如何从不同的类中获取函数来调用在 Main 中声明的对象?
- 堆还是堆栈用于创建对象?
- 使用 C++ 创建对象数组
- 使用unique_ptr创建对象
- C++递归地在类构造函数中创建对象
- 如何在另一个对象的构造函数中声明和创建对象?
- 在类中声明并在 Main 中创建对象时隐式调用析构函数
- 为什么您必须声明/创建一个单独的变量来通过引用调用,而不仅仅是在函数调用中创建一个自动对象
- 当场创建对象vs变量声明