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

快站app官网下载外贸网站源码免费

快站app官网下载,外贸网站源码免费,win7自建网站,房地产基础知识300问在C中#xff0c;设计不允许继承的类可以通过多种方法实现。以下是详细的方法说明及示例#xff1a; ### 方法一#xff1a;将构造函数和析构函数设为私有 这种方法的核心思想是通过将构造函数和析构函数设为私有#xff0c;使得子类无法调用这些函数#xff0c;从而无法…在C中设计不允许继承的类可以通过多种方法实现。以下是详细的方法说明及示例 ### 方法一将构造函数和析构函数设为私有 这种方法的核心思想是通过将构造函数和析构函数设为私有使得子类无法调用这些函数从而无法完成对象的初始化和销毁过程进而达到防止继承的目的。 #### 示例代码 cpp class NonInherit { private:     NonInherit() {}  // 私有构造函数     ~NonInherit() {} // 私有析构函数 public:     static NonInherit* CreateObj() {         return new NonInherit();     } static void DeleteObj(NonInherit* obj) {         delete obj;     } }; // 尝试继承将导致编译错误 // class Derived : public NonInherit {}; // 错误无法访问私有构造函数 #### 解释 - **私有构造函数**子类无法调用基类的私有构造函数因此无法实例化基类的部分从而无法完成对象的初始化。 - **私有析构函数**子类无法调用基类的私有析构函数因此无法正确销毁对象。 - **静态创建和销毁函数**通过静态成员函数来创建和销毁对象确保对象只能通过这些函数进行管理。 ### 方法二使用虚继承和友元 这种方法通过虚继承和友元机制使得最底层的派生类负责初始化虚基类而中间层的派生类无法访问虚基类的构造函数从而达到防止继承的目的。 #### 示例代码 cpp templatetypename T class Base {     friend T; // 友元类可以访问私有成员 private:     Base() {}     ~Base() {} }; class Middle : virtual public BaseMiddle { public:     Middle() {}     ~Middle() {} }; class Derived : public Middle { public:     Derived() {}     ~Derived() {} }; int main() {     Middle m; // 正确     Derived d; // 错误无法访问Base的私有构造函数     return 0; } #### 解释 - **虚继承**通过虚继承最底层的派生类负责初始化虚基类而中间层的派生类无法访问虚基类的构造函数。 - **友元类**只有最底层的派生类被声明为虚基类的友元可以访问虚基类的私有构造函数。 ### 方法三使用C11的final关键字 C11引入了final关键字可以直接修饰类表示该类不能被继承。 #### 示例代码 cpp class Base final { public:     void func() {         std::cout Base::func() std::endl;     } }; // 尝试继承将导致编译错误 // class Derived : public Base {}; // 错误Base是final类不能被继承 #### 解释 - **final关键字**直接修饰类表示该类不能被继承。如果尝试继承编译器会报错。 ### 总结 在C中设计不允许继承的类可以通过以下几种方法实现 1. **将构造函数和析构函数设为私有**通过私有化构造函数和析构函数使得子类无法实例化对象。 2. **使用虚继承和友元**通过虚继承和友元机制使得最底层的派生类负责初始化虚基类而中间层的派生类无法访问虚基类的构造函数。 3. **使用C11的final关键字**直接修饰类表示该类不能被继承。 这些方法各有优缺点选择哪种方法取决于具体的需求和场景。例如使用final关键字是最简洁和直观的方法但在C98标准中并不支持。而通过私有化构造函数和析构函数的方法虽然复杂一些但可以在所有C标准中使用。
http://www.hkea.cn/news/14413645/

相关文章:

  • 建湖网站设计wap网站欣赏
  • 网站建设的源代码镇江城乡建设网站首页
  • 建设网站设计论文范文wordpress设置vip
  • 建设网站架构服务器需要多少钱化妆品公司的网站建设策划书
  • 青岛做网站建设的公司库尔勒网站建设哪家专业
  • 怎么建免费企业官网站网站内容设计遵循的原则有
  • 做网站的贴吧用qq空间做网站
  • 国外网页设计欣赏网站wordpress主题安装后空白
  • 高端网站设计公司名单建设网站的过程
  • 绿色国外网站江苏省建设工程八大员考试网站
  • 网站优化的作业及意义html代码怎么变成网页
  • 网站错误页面模板茶山镇仿做网站
  • 外包公司做网站图片哪里整的公司的宣传网站应该怎么做
  • 高速公路建设管理局网站课程网站建设ppt模板下载
  • 个人网页制作成品下载保定网站建设seo优化营销
  • 建设网站的公司济南兴田德润o简介图片东莞公众号开发公司
  • 企业展示类网站模板快速开发软件
  • 网站多少流量够用自学做网站多久
  • 网站设计 北京店挖矿网站怎么免费建设
  • 网站建设 图书天元建设集团有限公司第九建筑工程公司
  • 网站关键词之间用什么符号隔开和龙市建设局网站
  • 学做宝宝衣服的网站推广软件平台
  • 北京网站建设公司兴田德润活动网站开发的经济效益分析
  • wap建设网站爱下手机站
  • php代码删除网站企业网站 html模板下载
  • WordPress获取文章封页图百度代做seo排名
  • 自己做淘客网站成本大吗页面设置上37cm
  • 网站首页轮播图怎么换开发一个网站平台多少钱
  • 皮具网站建设环保网站查询碾米是否做备案
  • 网站三网合一做游戏自媒体视频网站