《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操作系统,从第一步开 ...
随机推荐
- 双系统(win8.1+ubuntu14.04)删除win下分区导致grub rescue解决方案
几个grub rescue下的命令的含义: set 设置环境变量 ls 查看设备 insmod 加载模块 root 指定用于启动系统的分区 prefix 设定grub启动路径 操作流程: 1. 先使 ...
- Oozie4.2 安装部署、以及example测试
编译: 使用的环境是:Hadoop2.6.0.Spark1.4.0.Hive0.13.1.Sqoop1.4.4 编译Oozie的命令:./mkdistro.sh -Phadoop-2 -Dhadoop ...
- Android-优化UI性能(1)-降低主线程的堵塞时间
Android-优化UI性能(1)-降低主线程的堵塞时间 一 降低主线程的堵塞时间 Android已经提供了AsyncTask实现从主线程生成新的异步任务的方法. 定义并实现以下的类就可以(方法由系统 ...
- MyBatis传入集合 list 数组 map参数的写法
foreach的主要用在构建in条件中,它可以在SQL语句中进行迭代一个集合.foreach元素的属性主要有item,index,collection,open,separator,close.ite ...
- android studio - Indexing paused due to batch updated
傻逼的 Android Studio 又开抽疯了.... 日 打开项目就出现 Indexing paused due to batch updated ,并且半天没反应........ 解决办 ...
- strrchr()函数
函数简介 函数名称: strrchr 函数原型:char *strrchr(const char *str, char c); 所属库: string.h 函数功能:查找一个字符c在另一个字符串str ...
- Python(八)之函数
Python函数 函数作用: (1)代码重用 (2)一种设计工具,分解复杂问题 (3)将相关功能打包并参数化 函数种类: 全局函数:定义在模块中 局部函数:嵌套在其他函数中 lambda函数:表达式 ...
- 浅析notifyDataSetChanged内部工作流程
Reference: http://blog.csdn.net/hp910315/article/details/47174531 首先我们知道notifyDataSetChanged是Adater的 ...
- 知道创宇研发技能表v2.1
创建时间:2012/12/1 2013/4/26 公开发布 2013/7/15 新增:牛人1,2,3 2013/7/20 优化:成长,增加:小事心态.任务拆分.方法论 2013/8/12 更新:Web ...
- IOS开发之xib解决自定义CollectionCell问题
这几天一直在纠结一件事情,搞的我是食不能安,寝不能睡啊: 当程序员在面对一个自己解决不了的问题的时候,也许是该程序员开始成长的时候 ... 先说说,事件的起因: 之前是源于在网上下载的文档,使用xib ...