double *p1;       //p1为指向double型的指针变量

POINT *p2;       //p2为指向POINT型(点类型)的指针变量

int (*p3)[6];     //p3为指向一维数组的指针变量,该一维数组含有6个int型的元素

int (*p4)();      //p4为指向函数的指针变量,该函数的返回值为int型

数组指针:  

是一个指针。该指针指向的数据类型是数组类型,存放的是数组的起始地址。

int (*ArrayPtr)[100];    //申明一个数组指针ArrayPtr,指针指向包含100个整形元素的一维数组

指针数组:

一个数组,该数组中的元素是指针。

int *ArrayPtr[100];   //声明一个指针数组,数组名称为PtrArray,数组里面的元素可以存放整形类型变量的地址。

引用

引用是一个变量的别名,是一个目标对象的替代名,它由符号&来引导。对一个变量的引用操作,就是对这个变量的操作。

引用一旦初始化,它就与一个变量绑定在一起,任何对变量的赋值,都是对引用的赋值,同理,任何对引用的赋值,也就是对变量的赋值。

引用和指针的区别

引用和指针在函数参数传递时作用相同,但也有如下不同:

(1)指针是一个变量的地址,而引用则是变量的别名。因此,在程序中表示对象变量时,前者要通过取内容运算符*,而后者可以直接代表;

(2)指针是可变的,它可以忽而指向变量a,忽而指向b,而引用则只能在声明时一次初始化,不能在随后变成别的变量的引用;

(3)引用没有空间的概念。

函数参数的传递

1、值传递

2、地址传递

3、引用传递

按引用传送

内联函数

构造函数和析构函数

当一个对象定义时,C++语言自动调用该对象所属类的构造函数,建立该对象并对其进行初始化;

当一个对象生存期结束时,C++语言会调用该对象所属类的析构函数。

静态成员变量

当一个类定义多个对象时,所有对象的静态成员变量占用同一个内存空间。也就是说,静态成员变量对类的所有对象只有一份,不同的对象使用相同的成员变量。

应用静态数据成员实现数据的共享,使类的各个对象之间可以进行消息的传递。同时,静态数据成员不会破坏数据的封装性,有利于数据的安全通信。

静态成员变量的值是可以更新的,只要有一个对象对静态成员变量进行过更新操作,则静态成员变量的值就被更新了,以后所有对象存取的都是更新后的值。

友元

类的继承与派生

类与类之间的关系

1、关联关系

2、依赖关系

3、聚合关系   整体和部分的关系,如整体类和组成类

4、泛化关系   一般和特殊的关系

多态性

虚函数

重载

《C++程序设计教程——给予Visual Studio 2008》读书笔记1,2章的更多相关文章

  1. 《C++程序设计教程——给予Visual Studio 2008》读书笔记3章

    CLR(Common Language Runtime,通用运行时),负责在执行时管理代码,提供内存管理和线程管理等核心服务,同时又确保代码的安全性和准确性.

  2. 4 Visual Effects 视觉效果 读书笔记 第四章

    4   Visual Effects    视觉效果        读书笔记 第四章 Well, circles and ovals are good, but how about drawing r ...

  3. Visual Studio 2008常见问题

    1.asp.net在什么软件上运行?学习asp往往需要测试asp程序,电脑不能直接测试,需要装IIS才能运行,但装IIS要么需要安装盘,要么需要安装包,而且设置也很复搜索杂.这里给大学推荐两个替代II ...

  4. 如何用Visual Studio 2008 写汇编程序?

    如何用Visual Studio 2008写汇编程序? 最近在上夏季小学期,在学汇编语言,关于用什么编辑环境一直很纠结.很想找到一个比较好的IDE,但是试了几个像RadASM之类的,发现还不是很满意. ...

  5. 本周ASP.NET英文技术文章推荐[02/03 - 02/16]:MVC、Visual Studio 2008、安全性、性能、LINQ to JavaScript、jQuery...

    摘要 继续坚持,继续推荐.本期共有9篇文章: 最新的ASP.NET MVC框架开发计划 Visual Studio 2008 Web开发相关的Hotfix发布 ASP.NET安全性教程系列 ASP.N ...

  6. [vs2008]Visual Studio 2008 SP1添加或删除功能提示查找SQLSysClrTypes.msi文件

    前言 今天接到领导布置的一个任务,是之前同事负责的项目.离职了,现在客户有些地方需要修改,由于我之前参与过,就落在我的头上了. 然后我就把代码弄了过来,打开发现其中需要用到水晶报表.(我觉得不好用,不 ...

  7. Microsoft Visual Studio 2008 未能正确加载包“Visual Web Developer HTML Source Editor Package” | “Visual Studio HTM Editor Package”

    在安装Microsoft Visual Studio 2008 后,如果Visual Studio 2008的语言版本与系统不一致时,比如:在Windows 7 English System 安装Vi ...

  8. Visual Studio 2008 Package Load Failure:未能正确加载包“Microsoft.VisualStudio.Xaml”

    在安装好Visual Studio 2008后,启动Visual Studio 2008 发现如下提示: 包加载失败 未能正确加载包“Microsoft.VisualStudio.Xaml”( GUI ...

  9. 打开office word excel弹出visual studio 2008

    打开office word 或者excel或者ppt等文档就会弹出visual studio 2008正在配置对话框. 按照我下面的步骤,解决方法非常简单. 如果你的电脑是win7操作系统,从第一步开 ...

随机推荐

  1. Java:concurrent包下面的Map接口框架图(ConcurrentMap接口、ConcurrentHashMap实现类)

    Java集合大致可分为Set.List和Map三种体系,其中Set代表无序.不可重复的集合:List代表有序.重复的集合:而Map则代表具有映射关系的集合.Java 5之后,增加了Queue体系集合, ...

  2. 近观ArcGIS 10.3.1

    ArcGIS 10.3.1公布了是有很多增强和改变.接下来我们重点内容一睹为快. 一.三维内容制作.公布及分享 ArcGIS 10.3.1能够实现三维内容制作.公布及分享.公布流程: 须要的软件环境 ...

  3. Objective-C 位运算符

    转自:http://www.yiibai.com/objective_c/objective_c_bitwise_operators.html 下表中列出了支持Objective-C语言的位运算符.假 ...

  4. Android 源码阅读笔记

    Zygote: .Zygote 是系统启动之后创建的第二个进程2.Zygote 创建zygote Socket.虚拟机3.Zygote 在虚拟机中通过forkSystemServer, 创建Serve ...

  5. 九个问题从入门到熟悉HTTPS

    九个问题从入门到熟悉HTTPS Q1: 什么是 HTTPS? LHQ: HTTPS 是安全的 HTTP HTTP 协议中的内容都是明文传输,HTTPS 的目的是将这些内容加密,确保信息传输安全.最后一 ...

  6. (转)使用异步Python 3.6和Redis编写快速应用程序

    转自:http://mp.weixin.qq.com/s?__biz=MjM5NzU0MzU0Nw==&mid=2651374524&idx=1&sn=d289aa7aa484 ...

  7. ksoap2调用webservice传递参数丢失

    参数有顺序要求,顺序设置正确即可.

  8. Lintcode: First Bad Version 解题报告

    First Bad Version http://lintcode.com/en/problem/first-bad-version The code base version is an integ ...

  9. MDK 的编译过程及文件类型全解

    MDK 的编译过程及文件类型全解 ------(在arm9的开发中,这些东西都是我们自己搞定的,但是在windows上,IDE帮我们做好了,了解这些对深入开发是很有帮助的,在有arm9开发的基础上,下 ...

  10. Java Web项目部署时 “Exploded Archive”模式部署时无效

    在myeclipse中部署项目时,当Deploy type为Exploded Archive(deveplopment mode)时,finish按钮为灰色,无法部署的解决方法: 1.project上 ...