摘要:运算符能给程序员提供一种书写数学公式的感觉,本质上运算符也是一种函数,因此有类内部运算符和全局运算符之分,通过重载,运算符的“动作”更加有针对性,编写代码更像写英文文章. 1.C++标准允许将运算符重载为类成员或者全局的,一般如果是全局的话,为了效率,都是把它们定义为类友元函数. /* ** 重载全局运算符“+”.“-”,代码如下: */ #include <iostream> using namespace std; //class Complex; //Complex operato…
摘要:累继承可以实现源代码重用,模板技术也可以达到同样的目的.模板可以分为函数模板和类模板,其共同点是允许参数类进行类型化,编译器根据程序员传递的具体类型,又把函数模板实例化为具体函数,把类模板实例化为模板类. 1.函数模板 (1).来自同一个模板的模板函数只能执行相同的操作而不能执行不同的操作.这与重载不同,重载的函数一般不执行相同的操作(否则是去重载的意义). (2).函数模板可以包含类型化参数,也可以包含非类型化参数(多以int型出现,且允许有缺省值). (3).函数只支持部分特化功能,而…
摘要:多态性提供一组统一的调用接口函数,依据这些条用接口函数具体对象的不同,同一名字的函数会有不同的行为. 1.重载与隐藏 (1).对同一作用域中的同名函数,如果它们的函数特征标不同,那么它们就形成一种重载关系. (2).基类与派生类中非虚同名函数,不管它们的参数特征标是否相同,它们都形成隐藏关系,即派生类对象隐藏基类中的同名函数. #include <iostream> using namespace std; class Animal { public: void walk() { cou…
1.C++中三种继承方式及派生类中访问控制规则 (1).C++支持的三种继承方式是public.protected.private.C++允许一个类同时以不同的方式对不同的基类加以继承. (2). 不同继承方式下基类成员在派生类中的访问控制 继承方式 基类成员访问控制 public protected private public public protected no access protected protected protected no access private private…
1.函数重载而不出错是有条件的: (1).这些函数位于同一域内,如同一类中.同一文件中. (2).这些同名函数具有不同的参数特征标(特征标是指形參的个数.类型.排列顺序等). 2.引用特性(与指针对比): (1).引用在创建时必须初始化,这与指针变量的声明不同. (2).引用一旦初始化为指向一个对象,它就不能改变对另一个对象的引用.指针在任何时候都可以改变为指向另一个对象. (3).引用必须与合法内存单元相关连,不存在NULL引用:指针可以赋值为NULL. (4).从C++语言层面,引用和变量.…
前言 本文主要介绍面向对象(OO)程序设计,以维基百科的解释: 面向对象程序设计(英语:Object-oriented programming,缩写:OOP),指一种程序设计范型,同时也是一种程序开发的方法.它将对象作为程序的基本单元,将程序和数据封装其中,以提高软件的重用性.灵活性和扩展性. 简略来说,面向对象程序设计,指采用了面向对象的方法来进行程序设计.设计指一种把计划.规划.设想通过视觉传达出来的活动过程,它是一种创造性,积累性,实践性的工作.提笔写设计的文章是很有压力的,它不像深入一个…
20162317袁逸灏 第八周实验报告:实验二 Java面向对象程序设计 实验内容 初步掌握单元测试和TDD 理解并掌握面向对象三要素:封装.继承.多态 初步掌握UML建模 熟悉S.O.L.I.D原则 了解设计模式 实验要求 1.没有Linux基础的同学建议先学习<Linux基础入门(新版)><Vim编辑器> 课程 2.完成实验.撰写实验报告,实验报告以博客方式发表在博客园,注意实验报告重点是运行结果,遇到的问题(工具查找,安装,使用,程序的编辑,调试,运行等).解决办法(空洞的方…
一.实验报告封面 课程:Java程序设计 班级:1752班 姓名:吴一凡 学号:20175217 指导教师:娄嘉鹏 实验日期:2019年4月15日 实验时间:--- 实验序号:实验二 实验名称:Java开发环境的熟悉 实验题目: 实验要求: 完成实验二<Java面向对象程序设计>中的内容 其中Eclipse相关的内容参考Intellj IDEA 简易教程换成IDEA实现 参考实验二<Java面向对象程序设计>的一点说明,完成云班课中的检查点,也可以先完成实验报告,直接提交.注意不能…
20175315 实验二<Java面向对象程序设计>实验报告 一.实验内容及步骤 1.初步掌握单元测试和TDD 单元测试 任务一:三种代码 用程序解决问题时,要学会写以下三种代码: 伪代码 产品代码 测试代码 TDD(测试驱动开发): 伪代码(思路) 测试代码(产品预期功能) 产品代码(实现预期功能) TDD的一般步骤如下: 明确当前要完成的功能,记录成一个测试列表 快速完成编写针对此功能的测试用例 测试代码编译不通过(没产品代码呢) 编写产品代码 测试通过 对代码进行重构,并保证测试通过(重…
2018-2019-2 20175202实验二<Java面向对象程序设计>实验报告 一.实验内容 1. 初步掌握单元测试和TDD 2. 理解并掌握面向对象三要素:封装.继承.多态 3. 初步掌握UML建模 4. 熟悉S.O.L.I.D原则 5. 了解设计模式 二.实验要求 1.没有Linux基础的同学建议先学习<Linux基础入门(新版)><Vim编辑器> 课程. 2.完成实验.撰写实验报告,实验报告以博客方式发表在博客园,注意实验报告重点是运行结果,遇到的问题(工具查…