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

上海做原创网站cgi做网站

上海做原创网站,cgi做网站,做哪一类的网站可以短时间变现,品牌建设金点子1. 默认构造函数:对象的"出厂设置" 什么是默认构造函数? 没有参数的构造函数当你没有定义任何构造函数时,编译器自动生成用于创建对象时不传递参数的情况 class Smartphone { public:// 成员初始化方法一: 函数体内初始化Smartp…

1. 默认构造函数:对象的"出厂设置"

什么是默认构造函数?

  • 没有参数的构造函数
  • 当你没有定义任何构造函数时,编译器自动生成
  • 用于创建对象时不传递参数的情况
class Smartphone {
public:// 成员初始化方法一: 函数体内初始化Smartphone() {  // 默认构造函数storage = 128;  // 默认存储容量brand = "Unknown";cout << "手机已激活!" << endl;}// 成员初始化方法二: 初始化列表// 默认构造函数使用初始化列表Smartphone() : storage(128),     // 初始化列表语法brand("Unknown")  // 成员变量直接初始化{cout << "手机已激活!" << endl;}// 正确版本:带参数构造函数Smartphone(int storageVal, string brandVal) : storage(storageVal),  // 用参数初始化成员变量brand(brandVal)       // 避免命名冲突{cout << "手机已激活!" << endl;}private:int storage;string brand;
};// 使用示例
Smartphone myPhone;  // 调用默认构造函数

重要特性

  • 如果定义了其他构造函数,编译器不再生成默认构造
  • 可以强制生成默认构造:ClassName() = default;

2. 重载构造函数:对象的"定制服务"

为什么需要重载?

  • 提供不同的初始化方式
  • 适应不同场景的需求
class Pizza {
public:// 基础款:只指定尺寸Pizza(int size) : size(size), topping("cheese") {}// 豪华款:指定尺寸和配料Pizza(int size, string top) : size(size), topping(top) {}// 套餐款:包含饮品Pizza(int size, string top, string drink) : size(size), topping(top), drink(drink) {}private:int size;       // 英寸string topping;string drink;
};// 创建不同披萨
Pizza basic(12);                     // 基础款
Pizza deluxe(14, "pepperoni");       // 豪华款
Pizza combo(16, "veggie", "cola");   // 套餐款

最佳实践

  • 使用初始化列表提高效率
  • 避免重复代码,可以相互调用

3. 拷贝构造函数:对象的"克隆技术"

核心作用

  • 用已有对象创建新对象
  • 控制拷贝过程,避免浅拷贝问题
class GameSave {
public:GameSave(const GameSave& other) {// 深度拷贝动态内存data = new int[100];memcpy(data, other.data, 100*sizeof(int));cout << "存档已克隆!" << endl;}private:int* data;  // 动态分配的存档数据
};// 使用场景
GameSave original;
GameSave backup(original);  // 调用拷贝构造

三大调用时机

  1. 对象直接赋值初始化
  2. 函数参数传递对象
  3. 函数返回对象

4. 赋值运算符:对象的"身份转移"

与拷贝构造的区别

  • 作用在已存在的对象
  • 使用=运算符时触发
class Student {
public:// 赋值运算符重载Student& operator=(const Student& other) {if(this != &other) {  // 防止自赋值age = other.age;name = other.name;}return *this;  // 支持链式赋值}private:int age;string name;
};// 使用示例
Student a, b;
a = b;  // 调用赋值运算符

关键要点

  • 必须处理自赋值(a = a)
  • 通常返回引用以支持连续赋值
  • 与拷贝构造函数配合实现完整拷贝控制

总结对比表

构造函数类型调用时机典型用途示例代码
默认构造函数对象无参创建初始化默认值MyClass obj;
重载构造函数带参数创建对象多种初始化方式MyClass(42, "X")
拷贝构造函数对象复制初始化深度拷贝资源MyClass obj2(obj1)
赋值运算符已存在对象赋值资源安全转移obj2 = obj1;

掌握这四类构造函数,就像获得对象创建的"四把钥匙",能让你:

  1. 控制对象的诞生方式
  2. 确保资源的正确管理
  3. 构建更安全高效的C++程序

文章转载自:

http://qV9Xe7J8.tLdfp.cn
http://rFm2WrFW.tLdfp.cn
http://Izdaofuz.tLdfp.cn
http://vRBHSHA8.tLdfp.cn
http://l0uF5K1M.tLdfp.cn
http://yQkaLNjA.tLdfp.cn
http://q9KAKrzk.tLdfp.cn
http://HkCqM0tX.tLdfp.cn
http://3RsyJeQH.tLdfp.cn
http://TN33zMM0.tLdfp.cn
http://HUlJ2Xxm.tLdfp.cn
http://KCGw6ylr.tLdfp.cn
http://ZaOGbaV6.tLdfp.cn
http://zgRZSxmT.tLdfp.cn
http://QMwYIzvt.tLdfp.cn
http://1phNiQtm.tLdfp.cn
http://ZEnuNltA.tLdfp.cn
http://K8IJ2o69.tLdfp.cn
http://CVQLE82Q.tLdfp.cn
http://1XWXL8Iv.tLdfp.cn
http://JVHFr26L.tLdfp.cn
http://7tVD2ALE.tLdfp.cn
http://761NdHJ9.tLdfp.cn
http://MYGQKfnI.tLdfp.cn
http://nxYODOa0.tLdfp.cn
http://41NTs8Pb.tLdfp.cn
http://p9p7YVI8.tLdfp.cn
http://taR7TKjp.tLdfp.cn
http://MsCtNVCj.tLdfp.cn
http://SvqypNkf.tLdfp.cn
http://www.dtcms.com/wzjs/742443.html

相关文章:

  • 莆田建设信息网站seo招聘的关键词
  • 江苏省交通建设厅门户网站建筑工程网首页
  • wordpress企业站模板网页设计基础教程上机实训
  • 淅川网站建设网站文章只被收录网站首页
  • 网站后台文章排版seo怎么给网站做外链
  • 佛山企业网站建设电话百度热词搜索指数
  • 天河微网站建设想要导航页推广(推广页)
  • 怎样选择高性价比的建站公司wordpress获取文章一个tag标签
  • 比较正规的招聘网站富利建设集团有限公司网站
  • 网站建设 语言网络公司logo
  • 2003总是说网站建设中百度做网站好吗
  • 网站开发的学习路线廊坊网站建设技术托管
  • 广西医科大学网站建设企业案例网站生成
  • 网站域名备案时间简介常用的网页制作工具
  • 服务器网站目录凡客诚品官方网站的代码
  • wordpress检测seo网站建站公司的主页
  • 网站底部图片代码推广网站的广告怎样做
  • 顺德定制网站设计关键词搜索量查询
  • 外贸购物网站开发深圳微信分销网站设计
  • 客户做网站嫌贵了色母粒
  • 网站建设实训课做网站的费用入账
  • 怎呀做网站婚庆影楼型网站开发
  • 青岛工程建设监理公司网站网络营销常用的方法有哪些
  • 布吉网站建设哪家效益快网站站制做
  • 二十一冶建设有限公司网站最新的网络营销的案例
  • 如何搭建网站的支付接口沐风+wordpress+主题
  • 外贸网站推广渠道建设网站需要了解些什么问题
  • 网站下载软件入口网站后台乱码怎么办
  • 网站搜索功能设计网站运营招聘要求
  • 昆山张浦做网站wordpress 景点模板