2 czssamson czssamson 于 2016.04.26 20:04 提问

关于类中建立另一个含有其他类对象的对象

class FoodSeller:public Person//这个类要弄到animalfood和money类,创建对象来实施相应操作
class Zoo
{
public:
Zoo(int =0,int=0,int=0,int=0);
~Zoo();
bool judgeStatus();
private:
FoodSeller people;
AnimalEnclosure ae[3];

};
#endif
Zoo::Zoo(int p, int c, int b, int d)

:people(p, c, b,0)//此处为什么说没有办法进去,这里错误

{

}

{
FoodSeller(int,int,int,int);//调用FoodSeller的函数构造函数。注意形参列表的对应
~FoodSeller();

void setSellingPea(int);
void setSellingCar(int);
void setSellingBan(int);
void setSellingFood();

int getPeaAmount()const;
int getCarAmount()const;
int getBanAmount()const;

protected:
AnimalFood peanuts;//创建AnimalFood的具体卖的对象
AnimalFood carrots;
AnimalFood bananas;
private:
Money earnings;
};
#endif

十分紧急求帮忙

1个回答

caozhy
caozhy   Ds   Rxr 2016.04.26 21:37
 {
}
{
多了一个引号。
另外你的不少函数没有实现,只有定义
#if 和 #endif 也不配对
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
当一个类中包含其他类的对象时构造函数的调用顺序
1.按在组合类的定义中出现的顺序调用内嵌对象的构造函数(与初始化列表中出现的顺序无关) 2.调用本类构造函数的函数体 组合类构造函数定义的一般形式一般为: 类名::类名(形参表):内嵌对象1(形参表),内嵌对象2(形参表),…… {类的初始化}#include <iostream> #include <cmath>using namespace std; cla
一个类的对象最为另一个类的数据成员
1、在c++中,当把一个类的对象作为另一个新类的数据成员时,定义格式为:class  X{   类名1  成员名1;   类名2  成员名2;   其他成员;}2、如果一个类A的对象作为另一个类B的数据成员,则在类B的对象创建过程中,调用其构造函数的过程中,数据成员(类A的对象)会自动调用类A的构造函数。但是应注意:(1)初始化列表的方式调用构造函数      如果类A的构造函数为有参数时,则在程...
Qt|派生类中,其他类的对象如何初始化,其他类包括基类的基类和无关类
我的RFID程序中,Widget继承自QWidget,在Widget.h中,public定义了数据成员,QTableWidget  *cardtableWidget,在Widget.cpp的Widget构造函数中,初始化了QTableWidget  *cardtableWidget = new QTableWidget(10,3,this);        // 这个定义不是全局定义?
例4.8 含有对象成员的派生类构造函数和析构函数的执行顺序
// 例4.8 含有对象成员的派生类构造函数和析构函数的执行顺序。 #include using namespace std; class Base{ //声明基类Base public: Base(int i){ //基类的构造函数 x = i; cout<<"Constructing base class \n"; } ~Base(
C++ 关于在一个类中定义另一个类的指针与对象
1.在一个类中定义另一个类的对象,则程序运行时该类的对象自动调用其构造函数初始化,然后其主类才调用构造函数初始化2.在一个类中定义另一个类的指针,需要在主类里面初始化指针,如 A* p=new A(),之后该指针可以调用其类的成员变量,仅限公有变量,若想访问私有变量,需要将指针设置成友元。
c++读写类对象(含有指针成员)
#include #include #include using namespace std; //有很多通用的序列化库,比如boost::serialization,可以google c++ 序列化。 //如果只是简单的保存,参考这个 // 基本类型 int,double, float,bool... template void serialize(ofstream& stream,
【Java】中类的构造方法与类中创建其他类对象的先后顺序
判断 构造方法和创建其他类的对象 的先后顺序: package exercise; public class Test { public Test(){ System.out.println("Test 来了"); } public static void main(String[] args) {  //程序入口 System.out.println("我第一!"); new T
C++类对象创建过程
初看到这个题目,你可能会有些疑惑:C++类对象的创建还有什么好说的,不就是调用构造函数么?实际上情况并不是想象中的那么简单,大量的细节被隐藏或者被忽略了,而这些细节又是解决一些其他问题的关键,所以我们很有必要深入到这块"神秘"的区域,去探索鲜为人知的秘密。 分配空间(Allocation) 创建C++类对象的第一步就是为其分配内存空间。对于全局对象,静态对象以及分配在栈区域内的对象,对它们
一个类的对象作为另一个类的数据成员时如何构造函数
一个类的对象作为另一个类的数据成员。        一个类中的数据成员除了可以是int, char, float等这些基本的数据类型外,还可以是某一个类的一个对象。用子对象创建新类。        在C++中,当把一个类的对象作为新类的数据员时,则新类的定义格式可表示为:   class X   { 类名1  成员名1;     类名2  成员名2;     ……
python面向对象的补充(一个对象调用另一个对象)
我先总结一下python中的类的特点: 1.类中所有的方法的参数中都必须加self,并且是第一个参数 2.__init__方法用来初始化对象,也必须加self 3.用__str__方法,方法中有返回值,可以直接用print(对象引用的变量),__str__方法返回什么,print得到的就是什么 4.属性的赋值,最好用方法封装起来使用 __str__和__init__方法的举例: