c++
steveinchina
这个作者很懒,什么都没留下…
展开
-
设计模式之模板方法
在模板模式(Template Pattern)中,一个抽象类公开定义了执行它的方法的方式/模板。它的子类可以按需要重写方法实现,但调用将以抽象类中定义的方式进行。这种类型的设计模式属于行为型模式。...原创 2021-06-28 16:48:12 · 114 阅读 · 0 评论 -
面向对象程序设计
基于对象面向对象推荐书籍语言部分:《c++ primer》、《effective c++》标准库:《the c++ standardlibrary》、 《STL 源码剖析》原创 2021-05-30 11:28:57 · 138 阅读 · 0 评论 -
谈谈设计模式
谈谈设计模式软件设计中的设计模式是什么?设计模式是针对某一类问题的一套很好的解决方案设计模式的目标:复用软件设计的天敌:变化(需求的变化、 人员的变化、 平台的变化、 环境的变化)面向对象程序设计...原创 2021-05-30 11:23:45 · 102 阅读 · 0 评论 -
单例模式及最佳c++实现
单例模式及其c++实现单例模式是一种广泛使用的模式,顾名思义就是一个类只能有一个实例,并提供一个全局访问点,该实例被程序所有模块所共享。有很多地方都有这样的功能模块,如系统的日志输出,资源管理器等单例模式分类饿汉模式(在某些场景实用)懒汉模式(适用各种场景)在需要的时候创建对象懒汉模式需要引入同步机制才可以保证线程安全#include <iostream>class Singleton{public: static Singleton& GetSi原创 2021-05-29 18:47:08 · 245 阅读 · 0 评论 -
c语言与c++的区别
c语言与c++的区别1、 c是面向过程的语言,c++是面向对象的语言2、 struct的不同:c中struct只包含数据成员,c++中还包含函数3、 const的作用不同原创 2021-05-29 12:45:14 · 156 阅读 · 0 评论 -
c++11新特性
c++11新特性1、 auto类型推导2、 nullptr:初始化空指针3、 智能指针(unique_ptr、 shared_ptr、 weak_ptr)4、 lamda表达式5、 long long类型6、 using 别名7、 decltype类型推导8、 返回类型后置9、 列表初始化10、 for循环...原创 2021-05-27 14:32:25 · 99 阅读 · 0 评论 -
c++多态实现的机制
c++多态实现的机制1、 什么是多态?顾名思义就是同一事物在不同场景的不同形态。静态多态是在编译期间编译器可以根据实参来确定的,主要体现在两个方面函数重载和泛型。函数重载int Add(int left, int right){ return left + right;}double Add(double left, int right){ return left + right;}int main(){ Add(10, 20); A原创 2021-05-25 15:07:33 · 282 阅读 · 0 评论 -
c语言之输出
c语言之输出1、 printf功能:格式化输出函数,一般用于向标准输出设备按照规定的格式输出信息头文件:<stdio.h>调用格式:printf("格式化字符串",<参量表>)其中格式化字符串包括两部分:一部分是正常字符串,这些字符串按照原样输出;另一部分是格式化规定字符,以“%”开始,后面跟一个或几个格式化字符,用于控制输出格式。参量表是要输出的一系列参数,参数的个数和格式必须和格式化字符串一致。...原创 2021-05-25 11:31:43 · 1206 阅读 · 0 评论 -
c++之构造函数详解
C++构造函数的理解相对于C语言来说,C++有一个比较好的特性就是构造函数,即类通过一个或者几个特殊的成员函数来控制其对象的初始化过程。构造函数的任务,就是初始化对象的数据成员,无论何时只要类的对象被创建,就会执行构造函数。构造函数的语法构造函数的名字必须和类名相同,与其他函数不一样的是,构造函数没有返回值,而且其必须是公有成员,因为私有成员不允许外部访问,且函数不能声明为const类型,构造函数的语法是这样的:class Test{ public: ..原创 2021-02-19 11:33:32 · 427 阅读 · 1 评论 -
c++之虚析构函数的必要性
c++之虚析构函数的必要性构造函数不能是虚函数,主要有两个原因:1、 派生类不能继承基类的构造函数,因此把基类的构造函数声明为虚函数没有意义,无法实现多态;2、 c++中的构造函数用来在创建对象时进行初始化工作,在执行构造函数的时候,对象尚未创建完成,虚函数表这个时候还不存在, 也没有指向虚函数表的指针,所以此时还无法查询虚函数表。也就不知道调用哪一个构造函数。析构函数用来在对象销毁时进行清理工作, 可以声明为虚函数,有时必须声明为虚函数(作为基类时)。#include&..原创 2021-02-19 10:25:37 · 395 阅读 · 0 评论