![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
c++
文章平均质量分 51
MyFamily_IT
只为更好的自己而努力。
展开
-
c++面向对象学习(二)编译时多态
多态是面向对象编程的重要特征,所谓多态性是指不同对象收到相同消息时产生不同动作。通俗的说,多态性是指用一个名字定义不同的函数,这些函数执行不同但又类似的动作。即用同样的接口访问功能不同的函数。多态可以简单的理解成一个接口,多种方法。但是特定的场合下,一个接口只能对应一种与其环境最匹配的方法。多态分为动态多态和静态多态,两者本质区别是函数地址是早绑定还是晚绑定。编译期间可以确定函数的地址并生成代码就...原创 2018-03-24 22:16:57 · 288 阅读 · 0 评论 -
overload、overwrite、override的区别?
答:Overload(重载):在C++程序中,可以将语义、功能相似的几个函数用同一个名字表示,但参数或返回值不同(包括类型、顺序不同),即函数重载。(1)相同的范围(在同一个类中);(2)函数名字相同;(3)参数不同;(4)virtual 关键字可有可无。 Override(覆盖):是指派生类函数覆盖基类函数,特征是:(1)不同的范围(分别位于派生类与基类);...原创 2018-08-14 16:34:43 · 348 阅读 · 0 评论 -
operator new、new operator和placement new的区别?
1. 如果是在堆上建立对象,那么应该使用 new operator,它会为你提供最为周全的服务。2. 如果仅仅是分配内存,那么应该调用operator new,但初始化不在它的工作职责之内。如果你对默认的内存分配过程不满意,想单独定制,重载operator new 是不二选择。3. 如果想在一块已经获得的内存里建立一个对象,那就应该用placement new。但是通常情况下不...原创 2018-08-14 16:33:40 · 246 阅读 · 0 评论 -
QT学习路程(六)回车实现登录注册等功能
QT实现快捷键的三种方式 1、方法一,用信号和槽机制建立起连接,具体的做法如下。connect(ui.LineEdit,SIGNAL(returnPressed(),ui.PushButton,SLOT(clicked())));通过信号和槽机制建立起两个控件对象的关联。2、方法二,通过按钮控件的接口设置其快捷触发的键盘的按键。ui->pushButton_Sen...翻译 2018-08-04 11:46:29 · 1539 阅读 · 0 评论 -
Qt学习路程(五)客户端与服务器之间传递结构体
最近做的项目,因为数据类型不唯一,需要用结构体来传递数据,可以Qt下对于,自定义结构不提供特定方法,这就需要进行一些简单的转化,下面是我就结构体如何传输的方法。 struct PersonData{ int use_id; char name[10]; int passwd; int passwds; int money; int fl...原创 2018-08-04 09:15:47 · 1994 阅读 · 5 评论 -
volatile关键字的作用
.volatile关键字的作用以及优化代码的原因 易变的”因为访问寄存器要比访问内存单元快的多,所以编译器一般都会作减少存取内存的优化,但有可能会读错数据。当要求使用volatile声明变量值的时候,系统总是重新从它所在的内存读取数据,即使它前面的指令刚刚从该处读取过数据。精确地说就是,遇到这个关键字声明的变量,编译器对访问该变量的代码就不再进行优化,从而可以提供对特殊地址的稳定访问;如果不...原创 2018-07-10 10:08:11 · 203 阅读 · 0 评论 -
STL标准模板库
STL(Standard Template Library,标准模板库)是惠普实验室开发的一系列软件的统称。现然主要出现在C++中,但在被引入C++之前该技术就已经存在了很长的一段时间。STL的从广义上讲分为三类:algorithm(算法)、container(容器)和iterator(迭代器),容器和算法通过迭代器可以进行无缝地连接。几乎所有的代码都采 用了模板类和模板函数的方式,这相比于传统的...原创 2018-05-08 18:58:47 · 283 阅读 · 0 评论 -
C++面向对象(六)设计模式
这篇文章主要介绍C++常见的十几种设计模式模式:在一定环境中解决某一问题的方案,包括三个基本元素--问题,解决方案和环境(固定套路)。第一类:创建型模式单例模式,简单工厂模式,工厂模式,建造者模式,原型模式 第二类:结构型模式代理模式,装饰模式,适配器模式,桥接模式,组合模式,外观模式,享元模式。第三类:行为型模式观察者模式下面具体介绍这些模式,通过案例,学习设计模式,也要注意一点,重在理解案例,...原创 2018-05-17 19:27:20 · 487 阅读 · 0 评论 -
c++面向对象学习(五)异常和错误
(一)什么是异常?1)异常是一种程序控制机制,与函数机制独立和互补 函数是一种以栈结构展开的上下函数衔接的程序控制系统,异常是另一种控制结构,它依附于栈结构,却可以同时设置多个异常类型作为网捕条件,从而以类型匹配在栈机制中跳跃回馈.2)异常设计目的: 栈机制是一种高度节律性控制机制,面向对象编程却要求对象之间有方向、有目的的控制传动,从一开始,异常就是冲着改变程序控制结构,以适应面向...原创 2018-04-30 21:27:39 · 242 阅读 · 0 评论 -
c++面向对象学习(四)函数模板与类模板
概述: C++提供了函数模板(function template)。所谓函数模板,实际上是建立一个通用函数,其函数类型和形参类型不具体指定,用一个虚拟的类型来代表。这个通用函数就称为函数模板。凡是函数体相同的函数都可以用这个模板来代替,不必定义多个函数,只需在模板中定义一次即可。在调用函数时系统会根据实参的类型来取代模板中的虚拟类型,从而实现了不同函数的功能。 1)C++提供两种模...原创 2018-04-16 10:39:18 · 416 阅读 · 0 评论 -
c++面向对象学习(三)类、继承、模板、运算符重载
1、类、派生类 C++中类的概念很重要,重要到什么程度呢?把class/struct看成和main同一个等级,为什么这么说呢?因为,C++中不允许全局变量独立于类外,所以,在一个C++文件中,除了头文件,就是class和main了。当然这只是其中一个原因。另外,类可以看做一种类型,和C中struct类似的一种类型。但又有一定的区别。下面具体分析。 不论是类还是派生类,都是类,...转载 2018-04-09 16:35:11 · 284 阅读 · 0 评论 -
c++面向对象基础(一)
一,面向对象与面向过程的比较1,面向过程程序设计核心:算法和数据,“程序=算法+数据结构”。”先功能后数据”的思想。当问题规模不大时,因面向过程的设计方法逻辑清楚,实现简单,是最方便的。局限性:问题规模过大时,同一时刻的数据共用导致最终软件产品的不安全,代码重用率低等问题而低效。2,面向对象的程序设计方法把状态(数据)和行为(功能)捆绑在一起,形成了对象。面向对象有三个特点:封装,继承,多态。封装...原创 2018-03-17 21:50:50 · 354 阅读 · 0 评论 -
C/C++中const的详解
为什么使用const?采用符号常量写出的代码更容易维护;指针常常是边读边移动,而不是边写边移动;许多函数参数是只读不写的。const最常见用途是作为数组的界和switch分情况标号(也可以用枚举符代替),分类如下: 常变量: const 类型说明符 变量名 常引用: const 类型说明符 &引用名 常对象: 类名 const 对象名 常成员函数: 类名:...转载 2018-08-16 11:27:27 · 503 阅读 · 0 评论