C++中可以在一个类里建一个成员变量,用vector实例化另一个类吗?比如说下面这个

蜂芒 2016-03-22 11:09:09
class CPointElement
{
public:
// constructors
CPointElement()
{
}

CPointElement(CString& i, double x, double y, double h) :
id(i), x(x), y(y), h(h){}

~CPointElement()
{
}

// operations on Sales_data objects
CString& GetID(){ return id; }
void GiveID(CString& i) { id = i; }
CString& GetType();
void GiveType(CString& t);
double GetX(){ return x; }
void GiveX(double x){ this->x = x; }
double GetY(){ return y; }
void GiveY(double y){ this->y = y; }
double GetH(){ return h; }
void GiveH(double h){ this->h = h; }
private:
CString id = _T(""); // ID
enum PointType // 点要素类型
{
entity, // 实体点
mark, // 注记点
node, // 节点
endpoint, // 端点
wrong // 输入了非法字符
}type = wrong; // 类型
double x = 0.0; // x坐标
double y = 0.0; // y坐标
double h = 0.0; // 高程
};
然后用另一个类
class CPoint:
public CPointElement
{
private vector<CPointElement> m_post;
};
这样行吗?具体格式是怎样的呢?如何初始化呢?定义成private还是public呢?
...全文
312 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
paschen 版主 2016-03-23
  • 打赏
  • 举报
回复
定义的时候直接写成: private: vector<CPointElement> m_post; 然后在构造函数初始化列表那里调用CPointElement构造函数为其初始化
lm_whales 2016-03-23
  • 打赏
  • 举报
回复
可以 初始化么,C++11 可以用 初始化表 C++ 可以用数组初始化 vector

64,664

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧