首页 > 其他分享 >14.初始化和赋值的区别

14.初始化和赋值的区别

时间:2023-07-24 23:34:59浏览次数:30  
标签:初始化 14 它们 默认 Person 赋值

初始化是定义变量或对象的时候就给它们初始值

赋值是先定义变量或对象(此时可以初始化,如果不初始化的话编译器默认初始化),再给它们赋值的时候就先擦除它们的当前值(默认初始化的值,或则显示初始化的值),然后再以一个新的值代替。

 1 #include <iostream>
 2 using namespace std;
 3 
 4 class Person {
 5 public:
 6     Person() {
 7         cout << "Person的默认构造" << endl;
 8     }
 9      Person(int age) {
10         age_ = age;
11         cout << "Person的有参构造" << endl;
12     }
13 
14     Person(const Person& p) {
15         cout << "Person的拷贝构造" << endl;
16     }
17 
18     int age_;
19 };
20 
21 int main()
22 {
23 
24     Person p1(27);
25     Person p2(37);
26     p1 = p2;//将原来的成员变量age_擦除,赋值了37
27     cout << p1.age_ << endl;
28     system("pause");
29     return 0;
30 
31 }

 

标签:初始化,14,它们,默认,Person,赋值
From: https://www.cnblogs.com/Sandals-little/p/17578638.html

相关文章

  • !114514
    \(S_m(n)=\sum\limits_{i=0}^{n-1}i^m=\dfrac{1}{m+1}\sum\limits_{i=0}^{m}B_{m+1-i}\dbinom{m+1}in^i\),注意求和没有\(B_0\)。CF923DPickingStrings经过手玩发现,B和C等价,A可以转化为BB,B等价于AB。于是先把所有极长的AB连续段缩起来,凡是后面有......
  • kubectl - 如何列出Pod中运行的所有容器,包括初始化容器
    初始化容器存储在spec.initContainers中:kubectlgetpodsPOD_NAME_HERE-ojsonpath={.spec.initContainers[*].name}运行的所有容器在containers中kubectlgetpodsPOD_NAME_HERE-ojsonpath={.spec.containers[*].name}可以使用JSONPathmagic来显示两者kubectlgetpo......
  • (Relax 数论1.26)POJ 1496 Word Index(计算一个字符串在字典中的位置)
    大致题意:(与POJ1850基本一致)输出某个str字符串在字典中的位置,由于字典是从a=1开始的,因此str的位置值就是在str前面所有字符串的个数+1规定输入的字符串必须是升序排列。不降序列是非法字符串要求用循环输入,输入若干组字符串,若输入非法字符串则输出0,但不结束程序,这是和POJ1850......
  • Linux CentOS 7 安装 PostgreSQL v14
    1、安装PostgreSQL的RPM资源库sudoyuminstall-yhttps://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm2、安装PostgreSQLServersudoyuminstall-ypostgresql14-server3、初始化PostgreSQLsudo/usr/pgsql-14......
  • 安装Ubuntu 14.04后要做的5件事情
    Ubuntu最新版本Ubuntu14.04已经发布,它是一个长期支持版本(LTS),提供软件包和安全更新的服务周期为5年。本文为大家简单介绍了Ubuntu14.04版本新特性和安装Ubuntu14.04后需要做的5件事情,以供参考。 Ubuntu目前是世界上最流行的Linux操作系统,它提供了桌面版本和服务器版本,其他流行的......
  • POJ 1458 Common Subsequence(动态规划)
    传送门代码如下:#include<iostream>#include<cstdio>usingnamespacestd;intmaxLen[1000][1000];intmain(){strings1,s2;while(cin>>s1>>s2){intlength1=s1.length();intlength2=s2.length();......
  • 【Boost】Windows端使用 MSVC14.2 编译 Boost 并在 CMake 项目中使用
    Write2023.7.24关于boost在Windows下的使用gcc安装与CLion的配置,能够查到的英文资料都比较少,踩过坑后记录一下。MinGW安装BoostBoostDownload:https://www.boost.org/users/download/下载并解压在某个没有中文路径下的目录中在开始编译操作之前请把gcc添......
  • 【WebGL系列-03】获取shader变量地址及赋值
    获取shader变量地址及赋值上一节创建了WebGL程序对象,创建好program对象后,对象中包含顶点着色器和片元着色器,着色器中含有变量,我们需要对其进行赋值后才能够进行绘制。着色器代码如下:constVSHADER_SOURCE=/*glsl*/`attributevec4a_Position;voidmain(){gl_P......
  • 1143. 最长公共子序列
    1143.最长公共子序列转载:https://www.bilibili.com/video/BV1ey4y1d7oD/?spm_id_from=333.337.search-card.all.click&vd_source=46d50b5d646b50dcb2a208d3946b1598......
  • 114.STL中的map
    114.STL中的map1.map的简介map是C++STL中的一个关联式容器,它提供一对一的hash,它类似于Python中的字典,也有着键值对(Key-Value)这一说。我们可以通过键(Key)来找到值(Value),但需要注意的是,每个键(Key)只能在map中出现一次哦!map可以储存多种类型的数据,它主要用于一对一映射的情况,map内部......