求大神解释一下各个步骤是什么意思干什么的,小弟就这些分了,帮帮忙吧,万分感谢

#include "stdafx.h"
#include <iostream>
#include <string>
using namespace std;
class Quadrangle;
typedef Quadrangle* QUADPTR;
typedef void (*ACCESSFUN)(QUADPTR);
class Quadrangle
{
public:
string name;
};

class Rectangle
{
public:
string name;
Rectangle(int w=5,int h=7);
Rectangle(const Rectangle &rr);
~Rectangle();
void draw();
double area();
string what();
private:
int width,height;
};

Rectangle::Rectangle (int w,int h):name("Rectangle"),width(w),height(h){}

Rectangle::Rectangle(const Rectangle &rr)
{
width=rr.width;
height=rr.height;
}

Rectangle::~Rectangle(){}

void Rectangle::draw()
{
cout<<what()<<":width="<<width<<",height="<<height<<endl;
}

double Rectangle::area()
{
return width*height;
}

string Rectangle::what()
{
return "Rectangle";
}
class Square
{
public:
string name;
Square(int e=9);
Square(const Square &rs);
~Square();
void draw();
double area();
string what();
private:
int edge;
};
Square::Square (int e):name("Square"),edge(e){}
Square::Square(const Square &rs)
{
edge=rs.edge;
}
Square::~Square(){}
void Square::draw()
{
cout<<what()<<":edge="<<edge<<endl;
}
double Square::area()
{
return edge*edge;
}
string Square::what()
{
return "Square";
}
class Parallelogram
{
public:
string name;
Parallelogram(int w=2,int h=3);
Parallelogram(const Parallelogram &rp);
~Parallelogram();
void draw();
double area();
string what();
private:
int width,height;
};
Parallelogram::Parallelogram (int w,int h):name("Parallelogram"),width(w),height(h){}
Parallelogram::Parallelogram(const Parallelogram &rp)
{
width=rp.width;
height=rp.height;
}
Parallelogram::~Parallelogram(){}

不知道你想问什么
这段代码定义了几个不同的图形类,仅此追问

就是问的每个步骤什么意思而已,我知道是定义图形类,而且主函数也还没给出来,就是不知道每行代码各表示什么意思

追答

include声明
using指示符
Quad类声明
typedeft 助记符

类声明
类实现

// include 声明
#include "stdafx.h"
#include
#include
// using指示符
using namespace std;
// 类声明
class Quadrangle;
// typedef定义助记符
typedef Quadrangle* QUADPTR;
typedef void (*ACCESSFUN)(QUADPTR);

// 类Quadrangle
class Quadrangle
{
public:
string name; // 公有 数据成员 name
};

// 类Rectangle,一个公有数据成员
class Rectangle
{
public:
string name; // 公有 数据成员 name
Rectangle(int w=5,int h=7); // 类构造函数
Rectangle(const Rectangle &rr); // 类构造函数 重载
~Rectangle(); // 类析构函数
void draw(); // 成员函数 draw 返回空
double area(); // 成员函数 area 返回double类型
string what(); // 成员函数 what 返回string类型
private:
int width,height; // 私有数据成员 width height
};

// 类构造函数定义
Rectangle::Rectangle (int w,int h):name("Rectangle"),width(w),height(h){}
// 类构造函数定义
Rectangle::Rectangle(const Rectangle &rr)
{
width=rr.width;
height=rr.height;
}
// 类析构函数定义
Rectangle::~Rectangle(){}
// 类成员函数定义
void Rectangle::draw()
{
cout<<what()<<":width="<<width<<",height="<<height<<endl;
}

double Rectangle::area()
{
return width*height;
}

string Rectangle::what()
{
return "Rectangle";
}

追问

class Quadrangle;
typedef Quadrangle* QUADPTR;
typedef void (*ACCESSFUN)(QUADPTR);
class Quadrangle
{
public:
string name;
};
那麻烦问一下为什么前面CLASS了一下后面还要重新定义那个类呢?这是有什么特殊含义吗?还有typedef Quadrangle* QUADPTR;
typedef void (*ACCESSFUN)(QUADPTR);这两个到底是在干什么有什么用,就这个问题问了就行了,真心求教大哥,万分感谢!

追答

前面是声明,声明之后就可以使用这个类做为标识了
typedef Quadrangle *QUADPTR; // 用QUADPTR表示Quadrangle类型的指针,以后定义这类指针时,可以写成 Quadrangle *ptr = NULL; 也可以写成 QUADPTR ptr=NULL; 二者等价

typedef void (*ACCESSFUN)(QUADPTR); // 函数指针,指向 返回值为VOID 形参为QUADPTR 的函数

温馨提示:内容为网友见解,仅供参考
无其他回答

人死后,六道轮回是什么意思?请知道者告知一下,非常感谢!
六道轮回是,天人 ,阿修罗,人,地狱,饿鬼,畜生。这六道。是依据三世因果,前一世,造成你现在的处境,现在的当下,决定你后一世。人死之后,根据你在世间所作所造,决定你是上生天界,还是到地狱受刑罚,再根据你的杀业,转生畜生道,因为在世间浪费粮食不知惜福,再到饿鬼道受苦,总之一切都是因...

谁能把排列、组合、概率给我讲明白啊!小弟我先谢谢了!
,做第n步有mn种不同的方法,那么完成这件事共有N=m1×m2×m3×…×mn种不同的方法. 这里要注意区分两个原理,要做一件事,完成它若是有n类办法,是分类问题,第一类中的方法都是独立的,因此用加法原理;做一件事,需要分n个步骤,步与步之间是连续的,只有将分成的若干个互相联系的步骤,依次相继完成,这件事...

急!跪求大神。水浒传第十二回能帮我翻译一下吗,不要太短,要能说上五...
林冲下山取“投名状”,正巧碰到杨志,两人争斗,不分上下。正斗到紧要关头,王伦等人阻止住。王伦摆酒设宴,心中嫉妒,想要杨志留在山,以牵制林冲,杨志不从,王伦只能送杨志下山,只得让林冲坐了第四把交椅。 杨志乃杨令公之孙,因为丢了花纲石,想补殿帅职役,高俅大怒,批倒文书将杨志赶出殿帅府来。

...了,属于男高音,现在一直困扰我的是咬字问题,求各路大神给小弟...
(一)“深吸慢呼气息控制延长练习”。 其要领是:先学会“蓄气”,先压一下气,把废气排出,然后用鼻和舌尖间隙像“闻花”一样,自然松畅地轻轻吸,吸的要饱,然后气沉丹田,慢慢地放松胸肋,使气像细水长流般慢慢呼出,呼得均匀,控制时间越长越好,反复练习4—6次。(二)“深吸慢呼数字练习...

大家帮忙告诉我怎么接吻啊,小弟不胜感激。
第三步 舌吻 这才是真正的接吻开始,前面的可以说是前戏吧! 1、唇舌之战 当你和MM唇吻的时候,由于嘴唇还是比较干的,所以你会很自然地想到用舌头来滋润一下,你想得没错啊!想到就去做吧!你可以将舌头在MM的上下唇来回游走,再用舌尖弹拨MM的双唇,适当的时候可以用你的双唇夹住MM的上唇或下唇吮吸,再用舌尖来刺...

谁给我解释一下化学中的十字交叉求体积比的过程额 小弟先谢谢了
一、十字交叉相乘法 这是利用化合价书写物质化学式的方法,它适用于两种元素或两种基团组成的化合物。其根据的原理是化合价法则:正价总数与负价总数的代数和为0或正价总数与负价总数的绝对值相等。现以下例看其操作步骤。二、十字交叉相比法 我们常说的十字交叉法实际上是十字交叉相比法,它是一种图示...

要搬家了,装修的步骤是什么啊?
室内装修工程通常分为石工,水电工,泥瓦工,木工,漆工,清洁工,搬运工,专业产品安装工等等 开始装修了就大致按以下步骤进行: 1、石工,打线槽:所有管线线槽(给排水路、强弱电路)以及按设计要求的所类墙体等的拆除、开洞等。(通常3天完成) 2、水电工,布线:电路、水路、气路的安装布置。(通常4~7天完成) 3、泥(...

对于整柜的货物运费组成我明白了,但是整柜海运出口需要走什么步骤?
2、 订舱:客户确定要出货到非洲走海运的时候就要开始订舱,让业务协助客户填一份订单仓单,然后根据客户信息给上家订舱,订舱信息:起运港口、目的港口、货物品名、重量、体积、订什么船公司、那个码头起运、几月几号截关的船、是什么柜型的、付运费的方式、运费和附加费等等,这些信息越详细越好。出...

分配到不适合的工作不想干,该不该和领导说,怎么说?
1.工作临时起意,你帮领导“补全”有的时候领导给我们安排的工作,是他自己突发奇想或者一拍脑袋想出来的,我想大家多少都会体会过。这就存在一个问题:这个临时起意的工作,领导可能没有提前进行全盘考量,没有进行全面思考。这导致他在提出来的时候并没能预估出下属为了完成这个任务,要拆分成多少繁琐的...

当你请别人帮忙,别人说我安排一下什么意思?
他的意思是说他需要去安排去考虑去调换一下,看看有没有这样的工作,或者这样的忙可以帮你。因为他不可能马上答应你,如果他马上答应你,万一没有帮你帮到底的话,那他就觉得很尴尬。

相似回答