类设计
来源:互联网 发布:美工设计网站大全 编辑:程序博客网 时间:2024/06/07 00:09
enum GroundObjectType
{
TrafficSign,
Board,
ProtectiveBarrier,
BridgeOverPass,
Tunnel,
Gantry,
TollBooth,
VarMessgeSign,
PerDelineators,
Ditch,
Poles,
OtherObj
};
//地物类 ,实现地物的共性接口 by tianjihui
// 原来准备写一个父类,让子类继承,但继承会产生很多类,和相关的方法 ,产生代码较多
// 现抽象成地物类,概括所有属性和方式。
class cGroundObject
{
public:
cGroundObject(void);
~cGroundObject(void);
public:
//地物名称
QString m_Name;
//地物类型
GroundObjectType m_ObjectType;
//地物ID
unsigned int m_ID;
//地物的中心点
CCVector3d m_centerPoint;
// 存储地物的采集点列表
vector<CCVector3d> m_CollectPoints;
// 存储地物的长度
double m_Length;
// 存储地物的高度
double m_Heigth;
public:
bool getGroundName(QString GroundName);
GroundObjectType getGroundtype();
public:
// 纯虚函数 在地物子类中实现
virtual bool getLength()=0;
virtual bool getHeigth()=0;
virtual bool getCenterPoint()=0;
virtual bool computeAtrribute()=0;
public:
friend GroundObjectType getGroundtype(QString GroundName);
};
#pragma once
#include <cGroundObject.h>
class CTrafficSign:public cGroundObject
{
public:
CTrafficSign(void);
~CTrafficSign(void);
public:
unsigned int m_Type; //标识的类型 0_其它设施 1_红绿灯
unsigned int m_Shape; //0_圆形 2_矩形 3_其它
unsigned int m_Time; //0_无倒计时 1_有倒计时
unsigned int m_Pattern; // 0_圆形 1_方向箭头 2_车形 3_人形
unsigned int m_Num; // 1_1个灯 2_2个灯 3_3个灯
unsigned int m_Rank; //0_竖排 1_横排
public:
virtual bool getLength();
virtual bool getHeigth();
virtual bool getCenterPoint();
virtual bool computeAtrribute();
public:
friend bool ReadGround(QString fileName,const vector<CTrafficSign>& TrafficSigns);
friend bool WriteGround(QString fileName,const CTrafficSign & TrafficSign);
friend bool WriteGround(QString fileName,const vector<CTrafficSign> & TrafficSigns);
friend bool DeleteGround(const CTrafficSign & TrafficSign);
};
- 设计类
- 类设计
- 工厂设计类、代理设计
- 设计框架公共类设计
- Jexi设计 (4) 文档类设计
- 运用设计模式设计MIME编码类
- 面向对象设计原则-类设计原则
- 设计模式--设计模式通用类图
- 类的设计方法
- VBscript 类的设计
- 类的设计方法
- 关于类的设计
- VBscript 类的设计
- 类的设计方法
- 设计类站点大观园
- 类的设计方法
- 讨论类设计.
- 类设计有感
- 开始我的博客生涯,立字为证!
- nyoj--95--众数问题(水题)
- 我在项目产品中的常用工具
- -[__NSCFDictionary setObject:forKey:]: mutating method sent to immutable object' 解决方法:
- 软工文档总结学习篇
- 类设计
- 多重表
- checkbox属性checked="checked"已有,但却不显示打勾的解决办法
- wget
- 多线程下载
- LeetCode--Missing Number
- HDU 4135(Co-prime-[1,m]内与n互质的数的个数)
- 云数据中心网络技术——互动出版网
- css3动作