C++的要点:
   一个思想:抽象(和分类)的思想;
   三个概念:类、对象、消息;
   三个特征:封装、继承、多态;
   一个观念:函数服务于数据。
 
   程序 = 对象 + 消息
  (对象 = 数据结构 + 算法)
 
   封装及构造、拷贝构造、赋值、析构
   继承及隐含规则
   运算符重载
   虚函数、抽象类
   模板设计
   异常
   STL
 
== 抽象
抽象是对具体对象(问题)进行概括,抽出这一类对象的公共性质并加以描述的过程。
–先注意问题的本质及描述,其次是实现过程或细节。
–数据抽象:描述某类对象的属性或状态(对象相互区别的物理量)。
–代码抽象:描述某类对象的共有的行为特征或具有的功能。
–抽象的实现:通过类的声明。
 
== 类
将同一类型的对象加以抽象:描述该类对象的共有的属性或状态(对象相互区别的物理量),以及行为特征或具有的功能。这种抽象的实现叫做类。
-类是有着共同特征与行为,而状态各不相同的物体的总称。
-对象是类的实现,是类的特例。
-用C++术语来表达:类是一种类型。
-类是表现数据高级形态的有力工具。
 
== 封装
将抽象出的数据成员、代码成员相结合,视它们为一个整体。
–完全开放的数据结构容易受到伤害。
–目的是增强安全性和简化编程,使用者不必了解具体的实现细节,而只需要通过外部接口,以特定的访问权限使用类的成员。
–封装的实现:类声明中的{ }。
–体现了类的高内聚性。
封装的内涵
1.将数据和为其服务的操作结合成整体——整体性;
2.将包裹的内容分为可见部分与不可见部分,用访问权限加以控制——安全性;
3.即使是可见部分,也仅提供函数原型或接口,而将实现隐藏起来——封闭性;
4.为类提供了“本能”操作——生存性;
5.类内所有成员间的相互访问是完全自由的——开放性及数据的共享性。
 
== 继承与派生
是C++中支持层次分类的一种机制,允许程序员在保持原有类特性的基础上,进行更具体的说明。
实现:声明派生类
 
== 多态性
多态:同一名称,不同的功能实现。
目的:达到行为标识统一,减少程序中标识符的个数。
实现:重载函数和虚函数

c++的基本点的更多相关文章

  1. C语言基本点初探

    1,对于int a=10++;此语句错误,为什么呢,对于i++来说,i是一个变量,是把i加1然后赋值给i,然而10不是一个变量所以无法执行加加的语法; 2,运算符的优先级: 赋值运算符<逻辑运算 ...

  2. -高级Javascript编程学习笔记----Javascript编程及架构设计最应该注意的基本点

    最小全局变量 JavaScript通过函数管理作用域.在函数内部生命的变量只在这个函数内部,别的地方不可用.全局变量是指在函数外或是未声明直接简单使用的.每个Javascipt环境有一个全局对象,当你 ...

  3. .NET Framework 中的类型系统的两个基本点

    它支持继承原则. 类型可从称为基类型的其他类型派生. 派生类型继承基类型的方法.属性和其他成员(存在一些限制). 之后,基类型可从某些其他类型派生,这种情况下,派生类型继承其层次结构中这两个基类型的成 ...

  4. C++ 一些容易忽略的基本点

    new 高级应用 delete 其他用途帮助函数严格匹配类型 char teststr[100] = { 0 };// 静态区void test3(){ // 堆区 int *p = new int[ ...

  5. SQL基本点—— 思维导图

  6. 一篇包含了react所有基本点的文章

    去年,我写了一本关于学习React.js的小书,原来是大约100页. 今年我要挑战自己,把它归纳为一篇文章. 本文不会涵盖什么是React,或者为什么要学习它. 相反,这是面向已经熟悉JavaScri ...

  7. DDD初学指南

    去年就打算总结一下,结果新换的工作特别忙,就迟迟没有认真动手.主要内容是很多初学DDD甚至于学习很长时间的同学没有弄明白DDD是什么,适合什么情况.这世界上没有银弹,抛开了适合的场景孤立的去研究DDD ...

  8. DDD 领域驱动设计-两个实体的碰撞火花

    上一篇:<DDD 领域驱动设计-领域模型中的用户设计?> 开源地址:https://github.com/yuezhongxin/CNBlogs.Apply.Sample(代码已更新) 在 ...

  9. 对CSS中的Position、Float属性的一些深入探讨

    对CSS中的Position.Float属性的一些深入探讨 对于Position.Float我们在平时使用上可以说是使用频率非常高的两个CSS属性,对于这两个属性的使用上面可能大多数人存在一些模糊与不 ...

随机推荐

  1. MeteoInfoLab脚本示例:MODIS AOD

    MODIS的气溶胶光学厚度(AOD)产品应用很广,数据可以在Giovanni上下载:http://disc.sci.gsfc.nasa.gov/giovanni/overview/index.html ...

  2. go-zero 如何应对海量定时/延迟任务?

    一个系统中存在着大量的调度任务,同时调度任务存在时间的滞后性,而大量的调度任务如果每一个都使用自己的调度器来管理任务的生命周期的话,浪费cpu的资源而且很低效. 本文来介绍 go-zero 中 延迟操 ...

  3. 简单的Linux下的socket通信,小程序,方便以后查看。

    首先是我的一个出错提示的头文件<myerr.h>,自从用了根本停不下来啊!!! #ifndef _MYERR_H_ #define _MYERR_H_ #include <stdio ...

  4. BUUCTF-misc九连环 详解

    这个没什么玄学,我们解压出来一张照片,放到hxd中搂一眼,最后结尾的那几行中看到了zip压缩包的结尾标识符,难道这里面还有压缩包,于是我们就formostlrb 果然有图片有压缩包 我们打开压缩包看到 ...

  5. Monkey常用操作

    原文:https://www.cnblogs.com/lauren1003/p/6193277.html 一.Monkey测试原理:Monkey是Android中的一个命令行工具,可以运行在模拟器里或 ...

  6. logstash 过滤filter

    logstash过滤器插件filter详解及实例   1.logstash过滤器插件filter 1.1.grok正则捕获 grok是一个十分强大的logstash filter插件,他可以通过正则解 ...

  7. centos8平台安装zookeeper3.6集群

    一,规划三台zk服务器构成集群 ip:172.18.1.1 机器名:zk1 对应myid: 1 ip:172.18.1.2 机器名:zk2 对应myid: 2 ip:172.18.1.3 机器名:zk ...

  8. HTML <big> 标签

    HTML <big> 标签 什么是<big> 标签? <big> 标签呈现大号字体效果. 使用 <big> 标签可以很容易地放大字体.这简直不能再简单了 ...

  9. B. Psychos in a Line 解析(思維、單調棧)

    Codeforce 319 B. Psychos in a Line 解析(思維.單調棧) 今天我們來看看CF319B 題目連結 題目 給一個數列,如果相鄰兩數,左邊大於右邊,那麼就可以殺死右邊的數字 ...

  10. Java数据结构-03单链表(二)

    在之前我们封装了一些操作在接口类中,并在抽象类实现了相同的方法.下面我们开始写代码: 无头结点单链表:(注意下面的AbstractList是之前抽取的类,不是java.util包下的类) public ...