《C++程序设计教程——给予Visual Studio 2008》读书笔记1,2章
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章的更多相关文章
- 《C++程序设计教程——给予Visual Studio 2008》读书笔记3章
CLR(Common Language Runtime,通用运行时),负责在执行时管理代码,提供内存管理和线程管理等核心服务,同时又确保代码的安全性和准确性.
- 4 Visual Effects 视觉效果 读书笔记 第四章
4 Visual Effects 视觉效果 读书笔记 第四章 Well, circles and ovals are good, but how about drawing r ...
- Visual Studio 2008常见问题
1.asp.net在什么软件上运行?学习asp往往需要测试asp程序,电脑不能直接测试,需要装IIS才能运行,但装IIS要么需要安装盘,要么需要安装包,而且设置也很复搜索杂.这里给大学推荐两个替代II ...
- 如何用Visual Studio 2008 写汇编程序?
如何用Visual Studio 2008写汇编程序? 最近在上夏季小学期,在学汇编语言,关于用什么编辑环境一直很纠结.很想找到一个比较好的IDE,但是试了几个像RadASM之类的,发现还不是很满意. ...
- 本周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 ...
- [vs2008]Visual Studio 2008 SP1添加或删除功能提示查找SQLSysClrTypes.msi文件
前言 今天接到领导布置的一个任务,是之前同事负责的项目.离职了,现在客户有些地方需要修改,由于我之前参与过,就落在我的头上了. 然后我就把代码弄了过来,打开发现其中需要用到水晶报表.(我觉得不好用,不 ...
- 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 ...
- Visual Studio 2008 Package Load Failure:未能正确加载包“Microsoft.VisualStudio.Xaml”
在安装好Visual Studio 2008后,启动Visual Studio 2008 发现如下提示: 包加载失败 未能正确加载包“Microsoft.VisualStudio.Xaml”( GUI ...
- 打开office word excel弹出visual studio 2008
打开office word 或者excel或者ppt等文档就会弹出visual studio 2008正在配置对话框. 按照我下面的步骤,解决方法非常简单. 如果你的电脑是win7操作系统,从第一步开 ...
随机推荐
- Java:concurrent包下面的Map接口框架图(ConcurrentMap接口、ConcurrentHashMap实现类)
Java集合大致可分为Set.List和Map三种体系,其中Set代表无序.不可重复的集合:List代表有序.重复的集合:而Map则代表具有映射关系的集合.Java 5之后,增加了Queue体系集合, ...
- 近观ArcGIS 10.3.1
ArcGIS 10.3.1公布了是有很多增强和改变.接下来我们重点内容一睹为快. 一.三维内容制作.公布及分享 ArcGIS 10.3.1能够实现三维内容制作.公布及分享.公布流程: 须要的软件环境 ...
- Objective-C 位运算符
转自:http://www.yiibai.com/objective_c/objective_c_bitwise_operators.html 下表中列出了支持Objective-C语言的位运算符.假 ...
- Android 源码阅读笔记
Zygote: .Zygote 是系统启动之后创建的第二个进程2.Zygote 创建zygote Socket.虚拟机3.Zygote 在虚拟机中通过forkSystemServer, 创建Serve ...
- 九个问题从入门到熟悉HTTPS
九个问题从入门到熟悉HTTPS Q1: 什么是 HTTPS? LHQ: HTTPS 是安全的 HTTP HTTP 协议中的内容都是明文传输,HTTPS 的目的是将这些内容加密,确保信息传输安全.最后一 ...
- (转)使用异步Python 3.6和Redis编写快速应用程序
转自:http://mp.weixin.qq.com/s?__biz=MjM5NzU0MzU0Nw==&mid=2651374524&idx=1&sn=d289aa7aa484 ...
- ksoap2调用webservice传递参数丢失
参数有顺序要求,顺序设置正确即可.
- Lintcode: First Bad Version 解题报告
First Bad Version http://lintcode.com/en/problem/first-bad-version The code base version is an integ ...
- MDK 的编译过程及文件类型全解
MDK 的编译过程及文件类型全解 ------(在arm9的开发中,这些东西都是我们自己搞定的,但是在windows上,IDE帮我们做好了,了解这些对深入开发是很有帮助的,在有arm9开发的基础上,下 ...
- Java Web项目部署时 “Exploded Archive”模式部署时无效
在myeclipse中部署项目时,当Deploy type为Exploded Archive(deveplopment mode)时,finish按钮为灰色,无法部署的解决方法: 1.project上 ...