上一页 1 2 3 4 5 6 7 ··· 10 下一页
摘要: C++ 中友元的用法: 1、在类中使用friend关键字声明 2、类的友元可以是其它类或者具体函数 3、友元不是类的一部分 4、友元不受类中访问级别的限制 5、友元可以直接访问具体类中的所有成员。 友元声明使用格式: 友元关系不具备传递性 类的友元可以是其它类的成员函数 类的友元可以是某个完整的类— 阅读全文
posted @ 2019-10-16 21:58 Dipsyhu 阅读(1550) 评论(0) 推荐(0) 编辑
摘要: 1、如何判断构造函数的执行结果? 构造函数没有返回值,所以不能通过返回值来判断是构造函数是否构造成功。 如果给构造函数强行加入一个返回值,用来表示是否构造成功。这样确实能够反映出构造的结果,但是不够优雅,有点呆。 2、在构造函数中执return 会发生什么? 当构造函数中执行return后构造函数直 阅读全文
posted @ 2019-10-14 23:45 Dipsyhu 阅读(564) 评论(0) 推荐(1) 编辑
摘要: 对象的构造顺序: 1、对于局部对象,构造顺序是根据程序执行流进行构造,从上到下。 运行结果: 2、对于堆对象,程序到达new语句时创建对象,使用new构造时自动调用构造函数。 运行结果: 从运行结果看出,使用new关键字在堆上定义对象。构造顺序是根据new出现的顺序进行构造的。 3、对于全局对象,构 阅读全文
posted @ 2019-10-12 22:17 Dipsyhu 阅读(394) 评论(0) 推荐(0) 编辑
摘要: C++中提供了初始化列表对成员变量进行初始化。 语法规则:class_name::class_name() m1(v1),m2(v2,v3),m3(v3) { ....... } 注意: 成员的初始化顺序,与成员的声明顺序相同。 成员的初始化顺序与初始化列表的位置无关。 初始化列表比构造函数先执行。 阅读全文
posted @ 2019-10-12 12:57 Dipsyhu 阅读(2391) 评论(0) 推荐(0) 编辑
摘要: 在类里面成员函数的初始值是多少了?(取决于创建对象的位置,是在堆、栈、还是在静态存储区中创建。) 例如: 运行结果: 可以看出,对象只是变量,所以在不同的地方定义变量,所的到的初始值也不同。 在堆上定义:为随机数 在栈上定义:为随机数 在静态存储区上定义:因为静态存储区中变量默认为0 ,所以为0 这 阅读全文
posted @ 2019-10-10 23:21 Dipsyhu 阅读(1371) 评论(0) 推荐(0) 编辑
摘要: 类与封装的概念: 1、类: 类的实现、类的使用。 当使用类的时候,不需要关心实现的细节。当创建类的时候,才需要考虑到内部具体的实现细节。 2、类的封装: 成员变量,C++用于表示属性的变量。 成员函数,C++中用于表示类的行为的函数。 3、pubic、private关键字。(使得变量和函数有了访问权 阅读全文
posted @ 2019-10-08 23:08 Dipsyhu 阅读(3298) 评论(0) 推荐(3) 编辑
摘要: C++强制类型转换分为4个不同的类型。 1、static_cast -用作基本类型转换。 -不能用于基本类型指针转换。 -可以用于有继承关系对象之间的转换和类指针之间的转换。 编译结果: 2、const_cast -用于去除变量的只读属性。 -强制内心转换的目标只能是指针或者引用 编译结果: 3、d 阅读全文
posted @ 2019-10-07 13:38 Dipsyhu 阅读(1066) 评论(0) 推荐(0) 编辑
摘要: C++ 中的动态内存分配: C++与C语言分配内存关键字不同,C语言中的动态内存分配是通过 malloc(分配内存) 与 free(释放内存)完成。C++使用new(分配内存) delete(释放内存)。 C++与C语言分配内存方式不同,C语言是以字节进行内存分配,C++是以类型进行内存分配。 C+ 阅读全文
posted @ 2019-10-07 10:15 Dipsyhu 阅读(517) 评论(0) 推荐(0) 编辑
摘要: ——C++编译器完全兼容C语言的编译方式。(但是得有源代码) ——C++编译器会优先使用C++的编译方式进行编译 ——extern "C" 关键字能够强制C++编译器进行C方式的编译 学习目标:实现C语言与C++之间的互相调用 学习 extern "C" {} 关键字 学习 __cplusplus标 阅读全文
posted @ 2019-09-28 22:29 Dipsyhu 阅读(3432) 评论(2) 推荐(0) 编辑
摘要: 1、什么是重载函数 同一个函数名定义不同的函数,当函数名相同,不同的参数搭配时含义不同。 例如: 运行结果: 上面代码函数名相同,在C语言中是肯定会报错的因为C语言不支持重载函数。而在C++中是不会报错的。而且会根据参数 调用 对应的函数。 2、允许重载的条件是什么了? 2.1、参数类型不同 2.2 阅读全文
posted @ 2019-09-26 23:15 Dipsyhu 阅读(4228) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 7 ··· 10 下一页