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

环保网站建设维护情况报告最好用的系统优化软件

环保网站建设维护情况报告,最好用的系统优化软件,做网页要花多少钱,广西城乡建设部网站首页上规则 // 默认情况下,c 编译器至少给一个类添加三个函数 //1.默认构造函数(无参,函数体为空) //2.默认析构函数 (无参 ,函数体为空) //3.默认拷贝函数,对其属性进行值拷贝 //构…

上规则

// 默认情况下,c++ 编译器至少给一个类添加三个函数

//1.默认构造函数(无参,函数体为空)

//2.默认析构函数 (无参 ,函数体为空)

//3.默认拷贝函数,对其属性进行值拷贝

//构造函数调用规则:
//如果用户定义有参构造函数,c++不再提供默认无参构造函数,但是会提供默认拷贝函数
//如果用户定义拷贝构造函数,c++不会再提供其他构造函数

正文

假设我们有一个简单的类 Person,表示一个人的信息,包括姓名和年龄。首先,我们不定义任何构造函数、拷贝构造函数或析构函数,看看编译器会为我们自动生成什么函数。

#include <iostream>
#include <string>class Person {
public:std::string name;int age;
};int main() {Person person1; // 默认构造函数被调用person1.name = "Alice";person1.age = 30;Person person2 = person1; // 默认拷贝构造函数被调用return 0;
}

在这个例子中,我们定义了一个 Person 类,它具有两个属性:name 和 age。在 main 函数中,我们首先创建了一个名为 person1 的 Person 对象。由于我们没有定义任何构造函数,编译器为我们生成了默认构造函数。这个默认构造函数没有参数,函数体为空,所以我们可以使用 Person person1; 来创建一个空的 person1 对象。

接着,我们将 person1 的值拷贝到 person2 中,这时默认拷贝构造函数被调用。默认拷贝构造函数会逐个复制成员变量的值,所以 person2 会与 person1 具有相同的属性值。

现在,让我们定义一个有参构造函数和一个拷贝构造函数,看看它们如何影响默认函数的生成和构造函数的调用规则:

#include <iostream>
#include <string>class Person {
public:std::string name;int age;// 有参构造函数Person(const std::string& n, int a) : name(n), age(a) {std::cout << "Parametric constructor called" << std::endl;}// 拷贝构造函数Person(const Person& other) : name(other.name), age(other.age) {std::cout << "Copy constructor called" << std::endl;}
};int main() {Person person1("Alice", 30); // 有参构造函数被调用Person person2 = person1; // 拷贝构造函数被调用return 0;
}

在这个例子中,我们定义了一个有参构造函数和一个拷贝构造函数。现在,由于我们定义了有参构造函数,编译器不再为我们生成默认的无参构造函数。但是,编译器仍然会为我们生成默认的拷贝构造函数,因为我们没有定义拷贝构造函数时,编译器会提供默认实现。

在 main 函数中,我们首先使用有参构造函数创建了一个 person1 对象,然后将其值拷贝给 person2。由于我们定义了有参构造函数,编译器不再提供默认无参构造函数,但仍提供默认拷贝构造函数。因此,拷贝构造函数被调用来复制 person1 的值给 person2。

总结一下:

默认构造函数:如果没有定义任何构造函数,编译器会为你提供默认的无参构造函数。
默认拷贝构造函数:如果没有定义拷贝构造函数,编译器会为你提供默认的拷贝构造函数,用于值拷贝对象。
构造函数调用规则:如果你定义了有参构造函数,编译器不再提供默认无参构造函数,但仍提供默认拷贝构造函数。如果你定义了拷贝构造函数,编译器不再提供其他构造函数。
这些规则有助于理解C++中的构造函数和默认函数生成规则。

http://www.yayakq.cn/news/509752/

相关文章:

  • 个人网站建设方案书备案品牌网页设计
  • 微博网站建设做电商哪几个设计网站比较好
  • 域名 a记录 手机网站网站后台主流网站开发语言
  • 做网站 套模板 后端wordpress免费创建博客
  • 网页制作的网站重庆网站建设公司费用
  • 推荐网站建设收费标准网站开发视频转码
  • 做谱的网站软件项目过程
  • 网站建设注意哪些问题百度seo排名推广
  • 旅游网站界面设计制作网站电话
  • 换空间网站备案吗个性化网站定制价格
  • 宝安品牌网站制作建站知乎
  • 慈溪建设局网站电商网店代运营
  • 做众筹网站django网站开发
  • 福州专业网站制作的公司国外设计素材网站
  • 秒速网站建设网站负责人半身照
  • 网站制作复杂吗视频点播网站建设
  • 鹰潭手机网站建设网站建设功能模块价格
  • wordpress php 文件惠州做网站 百度优化
  • 房产网站开发方案南昌商城网站建设公司
  • 基础展示型网站和cmsphp 网站超市
  • 网站备案的服务器中国中建设计网站
  • 织梦怎么做手机网站产品宣传片制作公司
  • 自己做网站能挣钱吗wordpress免登录发文章
  • 示范校建设平台网站成都电脑培训班零基础
  • 网站设计连接数据库怎么做企业查询卡
  • 宁波住房与城乡建设部网站创恒建设有限公司网站
  • 做百度网站图片怎么做wordpress横幅广告
  • 京东网站的设计风格小程序开发公司官网
  • php网站开发api如何把网站和域名绑定
  • 鹤壁专业做网站公司手机建站cms系统