当前位置: 首页 > news >正文

大型茶叶网站建设网站索引量突然下降

大型茶叶网站建设,网站索引量突然下降,江门h5模板建站,宁乡电商网站建设收费GitHub - ros2/demos at foxy 一、说明 为了研究ROS2的组件编程#xff0c;首先要理解如何何为组件。组件本是微软的发明物体#xff0c;但是在ubuntu上需要自己从底层实现#xff0c;就说ROS2不用你写#xff0c;但是就能看明白也是需要一点理论功底的。本篇按照COM内幕的…GitHub - ros2/demos at foxy 一、说明 为了研究ROS2的组件编程首先要理解如何何为组件。组件本是微软的发明物体但是在ubuntu上需要自己从底层实现就说ROS2不用你写但是就能看明白也是需要一点理论功底的。本篇按照COM内幕的理论为线索一点一点实现它们的示例以达到理解的目的。 二、为什么要有组件 理解组件编程需要回顾程序软件的历史在历史上软件是逐步老化淘汰的过程每当就的软件过时了就需要重新开发。这种开发是重头走一回。但是在软件的逐步淘汰过程中它是某些局部环节不能满足需求并不是全部环节一起老化因而只需要局部升级就可以继续使用那么如何实现组件就成了针对的专门设计。 组件设计是一种隔离的思路是将应用程序、接口、接口实现分开进行设计的。如图 1 接口规定形式组件实现内容        2 一个组件可以有多接口。        3 多个组件可以有共同的接口但接口的内容各自组件各自规定。        4 接口定义好一般就不改了。需要新功能时可以追加接口、追加组件。        5 由于组件内实现了接口接口生存周期要长于组件。客户端调用组件 以上模式至少实现了 客户端和组件分隔组件和接口分割接口和接口实现分隔各自维护互不影响三、接口实现原理 接口的实现原理 class IX{ //first interface public:virtual void Fx1()0;virtual void Fx2()0; };class Iy{ //second interface public:virtual void Fy1()0;virtual void Fy2()0; };class CA:public Ix,public Iy{public:virtual void Fx1(){ coutFx1enl;}virtual void Fx2(){ coutFx2enl;}virtual void Fy1(){ coutFy1enl;}virtual void Fy2(){ coutFy2enl;} }; 以上代码是个比喻是展现实现的效果至于如何实现下面的设计更巧。  在上面实现中Ix和Iy是实现接口的纯抽象类。该类内部仅仅包含纯虚函数这个函数仅仅用来指针占位并无实质的实现。 为了实现纯虚函数的实体在组件CA中继承两个接口Ix和Iy在CA中实现了虚函数的集体化。可以将抽象类看成是空的表单在派生类CA中实现表单填写。 四、实质的接口定义 4.1 首先定义一个接口符号 在objbase.h中定义了一个interface的名词术语。 #define interface struct 注意这里interface定义成struct是因为在struct内的成员全部是public无需特殊生命。 4.2 更真实的接口定义 #ifndef __OBJBASE__ #define __OBJBASE__#include objbase.h interface IX{ //first interfacevirtual void Fx1()0;virtual void Fx2()0; };interface Iy{ //second interfacevirtual void Fy1()0;virtual void Fy2()0; };#endif 4.3 一个实例 ca.cpp #include istream.h #include objbase.hvoid trace(const char *pMsg ) {cout pMsg endl;}interface IX{ //first interfacevirtual void Fx1()0;virtual void Fx2()0; };interface Iy{ //second interfacevirtual void Fy1()0;virtual void Fy2()0; };class CA:public Ix,public Iy{public:virtual void Fx1(){ coutCA::Fx1enl;}virtual void Fx2(){ coutCA::Fx2enl;}virtual void Fy1(){ coutCA::Fy1enl;}virtual void Fy2(){ coutCA::Fy2enl;} };int main(){CA *pA new CA; trace(this is client call component ); Ix *pIx pA;trace(client: use the Ix interface); pIx-Fx1(); pIx-Fx2(); trace(client: use the Iy interface); pIy-Fy1(); pIy-Fy2(); trace(client:delete interface);delete pA; return 0; } 输出  this is client call component client: use the Ix interface CA::Fx1 CA::Fx2 client: use the Iy interface CA::Fy1 CA::Fy2 client:delete  interface 五、结论 客户端调用组件组件调用接口接口调用接口的实现每一步都有一个节点环节这样就使得【客户端】与【接口实现】这两个实质性的程序不产生关系达到独立维护的目的。 当客户程序和组件在一个源文件中时并无必要将其分开。但当客户和组件是在动态链接库中时此种隔离是必须的。下章将进一步隔离抽象让客户端不再使用CA的指针。 参考资料 [转]C/C构建你自己的插件框架 - Merlin-magic - 博客园 (cnblogs.com) COM编程入门不得不看的文章 第一部分 什么是COM如何使用COM_
http://www.dnsts.com.cn/news/145467.html

相关文章:

  • 网站制作哪里好薇开封做网站哪家好
  • 网站后台管理系统怎么登陆画册设计要求
  • 济南网站建设方案案例展示wordpress app开发教程
  • 做网站必须要买服务器吗行业前10的网站建设
  • ppt模板免费下载网站知乎成都十大互联网公司
  • wordpress 响应式 企业网站免费店铺logo
  • 建筑模板生产厂家有哪些天津seo培训
  • 如何做网站左侧导航条天涯网站建设路小学
  • 西安优秀高端网站建设服务商百度竞价推广代运营话术
  • 东莞网站建设营销平台的有免费建站的网站吗
  • 自己做书画交易网站做网站那个服务器好
  • 网站最初的索引量从何而来wordpress外网打开慢
  • 为网站网站做推广做一个营销型网站
  • 动漫网站怎么做抖音营销网站建设价格
  • 福田网站推广wordpress机构主页
  • 雄安做网站要多少钱网站建设学的课程
  • 无锡本地网站有哪些wordpress手机端如何使用
  • 扁平化网站后台wordpress登录后台不显示登录
  • 昆山网站建设昆山横沥网站制作招聘
  • 化工原材料网站建设wordpress 修改widget
  • 西安网站建设模板做男装海报的素材网站
  • 单页面网站入侵google play下载官方版
  • 网页游戏网站源码软件开发属于什么行业类别
  • 网站关键词几个房产信息网显示限售
  • 阿里云做网站选择服务器怎么样用html做asp网站
  • 玉环在哪里做网站上海 食品网站设计
  • 漳平网站编辑价格将wordpress安装到哪个数据库?
  • 公司网站建设服务公司王烨飞微博
  • dns网站卫士 收录深圳坪山新楼盘
  • 网站建设源码下载做机械的网站有哪些