关于vecor的push_back()和CRng一两句说不清,大家帮我看看啊

senr0816 2009-06-07 10:13:28
定义了两个类:

class PointElement
{
public:
PointElement();
virtual ~PointElement();
public:
MyPoint point;
CRgn region;
};

class PointLayer : public CLayer
{
public:
PointLayer();
virtual ~PointLayer();
public:
COLORREF color;
int size;
public:
vector<PointElement> PointArray;
};

因为第一个类中的CRgn region没有=运算符,PointElement类就不能重载=运算符和定义拷贝构造函数,那么第二个类的容器就不能push_back()。
请问有没有好的办法,能实现PointArray的push_back()?
大家帮帮忙,我押宝输了好些分,分现在都在这里了
...全文
77 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
senr0816 2009-06-08
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 pathuang68 的回复:]
建议改变设计思路。
[/Quote]
如何改呢?我希望每个点有个buffer
pathuang68 2009-06-08
  • 打赏
  • 举报
回复
建议改变设计思路。
必成桂 2009-06-08
  • 打赏
  • 举报
回复
建议用vector存PointElement的指针吧。

或者你不用vector,改用MFC的collection,cTypedPTR,或者是CObarray(指针数组)
pengzhixi 2009-06-07
  • 打赏
  • 举报
回复
可以考虑vector <PointElement *> PointArray;
emailtome 2009-06-07
  • 打赏
  • 举报
回复
[Quote=引用楼主 senr0816 的帖子:]
定义了两个类:
C/C++ codeclassPointElement
{public:
PointElement();virtual~PointElement();public:
MyPoint point;
CRgn region;
};classPointLayer :publicCLayer
{public:
PointLayer();virtual~PointLayer();public:
COLORREF color;intsize;public:
vector<PointElement>PointArray;
};
,PointElement类就不能重载=运算符和定义拷贝构造函数,那…
[/Quote]

你这个类设计的 米意义啊 !
senr0816 2009-06-07
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 mengde007 的回复:]
换指针试试;
[/Quote]
是不用容器用链表还是vector <PointElement *> PointArray;?
senr0816 2009-06-07
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 arong1234 的回复:]
这种情况比较特殊,我估计你不能用PointElement作为vector的基类型,而应该用PointElement×
一个没有办法定义operator=和拷贝构造的类是不能加入容器的

[/Quote]
你是说用vector<PointElement *> PointArray;么?
mengde007 2009-06-07
  • 打赏
  • 举报
回复
换指针试试;
arong1234 2009-06-07
  • 打赏
  • 举报
回复
这种情况比较特殊,我估计你不能用PointElement作为vector的基类型,而应该用PointElement×
一个没有办法定义operator=和拷贝构造的类是不能加入容器的
代码转载自:https://pan.quark.cn/s/a4b39357ea24 基于VHDL语言的24进制多功能数字钟 FPGA多功能数字钟设计 安装要求 本项目采用QuartusII9.0版本设计,非9.0版本打开可能会存在兼容性问题。 本项目选用FPGA器件为CycloneIII_EP3C40Q240C8 设计任务 设计一个24进制多功能数字电子钟,要求具备以下功能: (1)时钟显示:能够以十进制在7段数码管上显示“时”、“分”、“秒”、“十分之一秒”。 (2)校表功能:能够对时钟进行校正。 (3)启动/暂停功能:能够控制时钟的启动和暂停。 (4)一键清零功能:能够将时钟清零。 (5)整点报时功能:能够在整点时发出报时信号。 (6)闹钟功能:能够在设置的时间到达时发出闹钟信号。 顶层设计原理图如下: image 设计方案/设计原理及总体框图 设计实现思路: (1)计时功能。 计时功能主要由四个计数器模块共同构成,其中十分之一秒计时器为十进制计数、分,秒计时器为六十进制计数、小时计时器为二十四进制计数。 计时器之间采用进位信号进行串联。 (2)十进制7端数码管显示功能。 显示功能由译码器模块实现。 译码器模块的两个输入端分别为刷新端和数据端。 七个译码器的刷新端连接十分之一秒的周期脉冲信号。 而数据端连接计数器的输出端,用以将4位输出BCD码译码为7端数码管的七位显示信号。 (3)校表功能。 校表功能由二选一模块和校时模式选择器模块构成。 其中二选一模块用于连接下一级计时器模块的进位信号和手动按钮脉冲信号。 当控制信号为“0”时,二选一模块输出计时器模块的进位信号。 而当控制信号为“1”时,二选一模块输出手动按钮信号。 控制信号由校时模式选择器模块输出,校时模式选择器输出端连...
内容概要:本文围绕基于交替方向乘子法(ADMM)的多主体综合能源系统分布式协同优化展开研究,提出一种可在保护各参与主体数据隐私的前提下实现全局协同优化的分布式算法框架。通过构建增广拉格朗日函数,将集中式优化问题分解为多个子问题,各主体并行迭代求解并仅交换边界变量信息,从而在保证隐私安全的同时实现系统整体能效与经济性的提升。研究详细阐述了ADMM算法的数学建模过程、收敛性条件及其实现在多主体电-热-气综合能源系统中的应用,并通过Matlab代码进行仿真验证,展示了其在园区、微电网群等场景下的有效性与实用性。; 适合人群:具备一定电力系统优化、分布式算法理论基础及Matlab编程能力的研究生、科研人员以及从事综合能源系统、能源互联网、智能电网等相关领域的工程师;特别适合关注分布式优化、隐私保护协同调度等前沿方向的专业技术人员。; 使用场景及目标:①应用于多主体异构能源系统的协同调度,如工业园区、城市能源网络、微电网集群等复杂场景;②实现各利益主体在不共享原始负荷、成本等敏感数据的情况下完成联合优化,提升系统整体运行效率;③为ADMM算法在实际能源系统中的工程化部署提供可复现的代码实例与完整技术路径参考。; 阅读建议:建议读者结合提供的Matlab代码逐模块理解算法实现细节,重点掌握增广拉格朗日函数构造、对偶变量更新机制与收敛判据的设计;同时可进一步拓展学习一致性ADMM(C-ADMM)、乘子惩罚方法等改进算法,深化对分布式优化理论体系的理解。

65,210

社区成员

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

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