自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(10)
  • 收藏
  • 关注

原创 C++类型补充

在直接进行a=x的话是行不通的,这时会调用构造函数创造一个不具名的对象,把x的值给不具名对象,再用不具名对象给a赋值。我们只能访问的是对象,而不是类型,只能给对象空间。打印的是20.这里是逗号表达式,取后面的值,因为y已经有初始值了,所以会将y的值赋给x,所以打印出来就是20.在构造函数和拷贝构造函数中的冒号代表初始化,但在对象的其他成员函数不能再二次构建。只有构造函数,拷贝构造函数可以用冒号进行初始化,普通函数是不可以的。这里类型强转必须是单参,但是构建不具名对象不要求必须是单参。

2024-07-24 20:49:13 137

原创 可见性生存期、拷贝构造函数与声明和定义的区别

使这个方法既可以适用于普通对象也可以适用于常对象,使这个方法的普适性增加。当这个函数只读不写的时候就可以把函数定义成常方法。声明是用来告诉编译器变量的名称和类型,而不分配内存。例如:语句 extern int Value;表示 Value 在别的文件中已经定义,提示编译器遇到此变量时在其它模块中寻找其定义。语句 extern int b = 10;表示定义了变量 b,这一点需要注意。注意:即使是 extern ,如果给变量赋值了,就是定义了。定义是为了给变量分配内存,可以为变量赋初值。

2024-07-23 21:47:19 815

原创 构造函数析构函数

方案一:各个对象完全独立的安排内存中的方案。方案二:各个对象的代码区共用的方案这个方案是面向对象常用的方案。

2024-07-22 15:57:02 333

原创 C++类的设计与成员 数据

访问限定符有三种,public(公共的),private(私有的),protected(保护的)。第一种说明的成员能从外部进行访问,另外两种说明的成员不能从外部进行访问。每种说明符可在类体中使用 多次。它们的作用域是从该说明符出现开始到下一个说明符之前或类体结束之前结束。如果在类体起始点无访问说明符,系统默认定义为私有(private)(struct默认为公有)。函数在类内声明和定义和在类内 声明类外定义是有一点区别的。在类内声明和定义系统会默认你是内联函数,类外定义不是内联。

2024-07-19 19:23:58 172

原创 C++基础入门(6)

decltype是识别类型,用于定义,和sizeof相当,但不用来计算大小,也不用像auto一样定义初始值。它是对括号里的表达式推导。这里x是10,因为推导在编译时进行,不执行代码,只是推导出类型为int。如果表达式返回的是参与运算的值本身,是引用类型类型的名字和表达式中名字相一致如果返回的是一个亡值,就是引用,如果是一个具体存在的值,就是它本来的值。

2024-07-18 20:12:34 188

原创 C++基础入门(5)

接上一节的函数模板不管函数模板还是类模板,都是产生代码的代码。

2024-07-18 17:33:14 879

原创 C++基础入门(4)

两者 extern 和 extern"C"有点区别:extren 在C和C++中,都表示声明语句的意思;而 extern"C"是按C语言方式去编译文件;extern"C"只能在C++文件使用,extern在C和C++都可以使用在 函数前面加上extern"C":函数名以C的方式进行修饰约定规则extern"C++":函数名以C++的方式进行修饰约定规则。

2024-07-16 20:11:59 962

原创 C++入门(3)inline函数与缺省参数

缺省参数可以有多个,但所有的缺省参数必须放在参数表右侧,即先定义所有的非缺省参数,再定义缺省参数。一般情况下,函数调用时的实参个数与形参相同,但为了更方便地 使用函数,C++也允许定义具有缺省参数的函数,这种函数调用时,实参个数可以与形参不相同。当函数功能简单,使用频率很高,为了提高效率,直接将函数的代码镶嵌到程序中。这样的函数在调用时,对于缺省参数,可以给出实参值,也可以不给出参数值。当程序执行函数调用时,系统要建立栈空间,保护现场,传递参数以及控制程序执行的转移等等,这些工作需要系统时间和空间的开销。

2024-07-15 11:13:44 529

原创 C++基础入门(2)

在这其中s1,s2,s3,s4都可以编译通过,因为s1,s2,s3,s4的改变都不会影响p自身的值进行改变。

2024-05-21 00:58:03 1006

原创 C++基础入门(1)

初始化概念后直接跟{},统一进行初始化。()的初始化与{}的初始化区别在这段代码运行结果中不会出现sum这个变量,但会出现num这个变量。sum会被认为是函数声明。{}具有更强的指向性,对于程序要求会更加严格。这段代码可以编译通过,只是b的值为12.而这段代码会报错,因为{}具有更强的指向性。

2024-05-20 20:36:17 1151 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除