- 博客(11)
- 收藏
- 关注
原创 STL初识
本文介绍了C++ STL的核心组件和vector容器的使用。STL包含容器、算法、迭代器等六大组件,其中vector是常用的序列式容器。文章详细讲解了vector的三种用法:存放内置数据类型、自定义数据类型以及容器嵌套容器,重点演示了迭代器的遍历方法。通过实例代码展示了如何用push_back添加数据、通过迭代器访问元素,为后续学习其他STL容器奠定了基础。掌握vector和迭代器的使用是学习STL的重要第一步。
2026-04-06 12:32:49
407
原创 C++类模版
本文介绍了C++类模板的基本概念和使用方法。主要内容包括:类模板与函数模板的区别(无自动类型推导、可设默认参数);成员函数的创建时机(调用时才创建);类模板对象作为函数参数的实现方式;类模板与继承的关系(子类需指定父类模板类型);类模板与友元的常用实现方式(类内声明友元函数)。文章通过代码示例展示了类模板的各种应用场景,并总结了类模板作为通用类模具的特点和使用要点,强调使用时必须指定具体类型,不能直接推导类型。最后作者表示欢迎指正和交流学习。
2026-04-02 11:51:37
340
3
原创 C++模版
本文介绍了C++模板编程的基本概念和应用。主要内容包括:1)模板的作用和特点,即建立通用框架提高复用性;2)函数模板的语法和使用注意事项,如自动类型推导的限制;3)普通函数与函数模板的区别,特别是在类型转换方面的不同;4)两者的调用规则,包括优先级和重载特性;5)模板的局限性,特别是对自定义类型的处理需要具体化实现。文章通过多个代码示例演示了模板的使用场景和常见问题,为后续学习类模板和STL打下基础。
2026-03-31 19:21:43
466
原创 多态两种实现方式
本文介绍了C++中多态的两种实现方式:静态多态和动态多态。静态多态通过函数重载实现,要求同名函数在参数类型、个数或顺序上不同;动态多态通过虚函数和继承实现,子类重写父类虚函数,运行时确定调用。文章通过代码示例展示了函数重载的实现方式,以及虚函数如何实现运行时多态绑定。动态多态需要满足继承关系和虚函数重写条件,通常使用父类指针或引用指向子类对象。多态是面向对象编程的重要特性,掌握它对深入理解C++编程至关重要。
2026-03-31 11:03:01
496
原创 C++继承
本文介绍了C++继承的概念和使用方法。主要内容包括:继承的基本语法和三种继承方式(公共、保护、私有);处理继承中同名成员的方法,需通过作用域区分;多继承语法及其潜在问题;以及解决菱形继承问题的虚继承技术。文章通过代码示例演示了各种继承场景下的处理方法,并指出多继承在实际开发中的局限性。最后强调继承作为面向对象三大特性之一的重要性,建议读者掌握这些基础知识。
2026-03-30 21:15:50
450
原创 运算符重载大全
本文介绍了C++运算符重载的基本概念和应用场景。运算符重载是静态多态的一种形式,通过重载运算符可以使自定义类型支持内置运算符的操作。文章详细分析了加号、左移、自增、赋值、关系运算符和函数调用运算符的重载方法,并提供了具体代码实现。其中重点讲解了成员函数和全局函数实现运算符重载的区别,以及前置/后置自增运算符的特殊处理方式。通过运算符重载,开发者可以扩展运算符的功能,使其适用于自定义数据类型,提升代码的可读性和灵活性。
2026-03-29 13:58:53
830
原创 友元的三种实现方式
友元通过 friend 关键字打破类的封装,允许外部函数或类访问类的私有成员,主要有三种实现方式:全局函数做友元:在类内声明 friend void 函数名(参数),让一个全局函数获得私有成员访问权限,写法简单。类做友元:在类内声明 friend class 类名,使整个类的所有成员函数都能访问私有成员,权限开放范围最大。成员函数做友元:在类内声明 friend void 类名::函数名(),仅授权指定成员函数访问私有成员,权限最安全
2026-03-28 18:35:10
248
原创 深拷贝与浅拷贝
本文探讨了C++中深浅拷贝的区别与应用。浅拷贝是简单的赋值操作,可能导致堆区数据重复释放的问题;深拷贝则重新申请堆区空间进行拷贝。文章通过代码示例展示了浅拷贝的问题(重复释放堆区内存)及其解决方案(自定义深拷贝构造函数)。关键点在于:当类包含堆区指针成员时,必须自定义拷贝构造函数实现深拷贝,同时在析构函数中正确释放堆区内存。最后提供了实现深拷贝的具体代码示例。
2026-03-28 17:03:51
162
原创 构造函数和析构函数相关知识
本文介绍了C++中构造函数和析构函数的相关知识。主要内容包括:1) 构造函数用于对象初始化,析构函数用于对象销毁前的清理工作;2) 构造函数的分类,按参数分为有参构造和无参构造,按类型分为普通构造和拷贝构造;3) 拷贝构造函数的三种调用时机;4) 构造函数的调用规则,当用户定义有参构造时系统不再提供默认构造但会提供拷贝构造,定义拷贝构造时不再提供其他构造。文章通过代码示例详细演示了各种构造函数的定义和使用方法。
2026-03-27 17:32:47
173
原创 C++案例——圆与点的位置关系
本文介绍了使用C++类封装实现圆与点位置关系的判断案例。通过创建Point类和Circle类,利用成员函数设置坐标和半径属性,并计算点与圆心距离来判断位置关系(圆内、圆上或圆外)。文章详细解析了类成员对象的使用、访问权限控制以及引用传参等关键点,并提供了完整的代码实现,包括类定义、成员函数和主函数调用示例。该案例展示了面向对象编程在几何问题中的应用。
2026-03-27 12:43:33
296
原创 C++封装案例——立方体
1. 先封装,使用class,类里面有权限,行为,属性。分别对应下面public,sertl函数,变量(属性)m_l。成员函数本身会调用本身对象,使用只需要传递一个对象进入就可以了,当然使用成员函数的时候别忘记对象去调用成员函数。2. 再写成员函数,成员函数也就是行为,写在类里面,这个成员函数写在public下面。当然这个成员函数需要返回值,只需要真假值就行,使用bool返回值类型。3. 接下来就是创建具体对象,可以在main函数或者测试函数里面创建。cout << "体积不相等" << endl;
2026-03-26 11:29:57
56
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅