第2课 掌握C++
来源:互联网 发布:lomo拍立得知乎 编辑:程序博客网 时间:2024/06/06 00:20
1.定义结构体和类时别忘记在最后加入 ";" 号!例如 Class Point{int x;int y;};
2.#include <xxx.h> 与#include "xxx.h"的区别: <>不查找运行时目录,""查找运行时目录!
3.类的定义中,如果未指明成员类型,则缺省为 private.而结构体中则缺省为public.
4.引用:引用经常用在函数的传参上。另外数值交换函数也经常用引用。例
change(int &x,int &y){int temp;temp=x;x=y;y=x} 调用时即可以用 int a=3;int b=4;change(a,b);一般不用指针来作为参数进行数值交换。因为会引起歧义。
5.通常将类的定义放.h文件,而将其实现放在 cpp文件中,别忘记了在cpp文件中 #include "xxx.h"
6.如何防止类的重复定义?
用#inndef Point_H_H
#define Point_H_H
class Point{};
#endif来防止
7.源文件cpp 文件单独编译成 obj文件。最后由链接器将与将要使用到的 C++标准库类链接成exe文件,头文件不参加编译。所以在 cpp文件中别忘记了加入#include "xxx.h"
8.函数的覆盖,在子类中重写父类的函数,此时采用早期绑定的方法。如果加入了 virtual,则将采用迟绑定的技术,在运行时根据对象的类型确定调用哪一个函数。此迟绑定技术是 MFC的类的继承的精髓。
9.强制类型转换。如果CFish从 CAnimal派生而来。则可以将鱼的对象转换为 CAnimal的对象,而反之则不行。从现实中理解也是正常的,鱼可以是动物,而动物却不是鱼。再如 int可以强制转换成char型。而反之则出错。
10 包含头文件时,<>和 ””是不同的。<>表示编译器从系统目录下开始搜索,然后再搜索 PATH环境变量所列出的目录,不搜索当前目录,找不到就出错。而 ””则表示先从当前目录搜索,然后才是系统目录和 PATH环境变量列出的目录。所以,如果头文件在系统目录下,就用 <>,如果头文件在当前目录下,就用 ””,这样可以加快搜索速度。
11 在类的头文件(*.h)的开头,一般定义有如下宏:
#ifndef ANIMAL_H_H
#define ANIMAL_H_H
Class ***
……
#endif
这么做就是为了避免类重复定义。
0 0
- 第2课 掌握C++
- 第2课 掌握C++
- 掌握 Ajax,第 2 部分
- 掌握 Ajax,第 2 部分
- 掌握 Ajax,第 2 部分: 使用 JavaScript
- 孙鑫VC++第2章掌握C++
- 第4课版本定制:Spark Streaming事务处理彻底掌握
- 第4课:Spark Streaming事务处理彻底掌握
- 第4课版本定制:Spark Streaming事务处理彻底掌握
- 掌握 Dojo 工具包,第 2 部分: XHR 框架与 Dojo
- 掌握Dojo工具包,第1部分:Dojo入门简介(2)
- 掌握 Dojo 工具包,第 2 部分: XHR 框架与 Dojo
- 掌握 Dojo 工具包,第 2 部分: XHR 框架与 Dojo
- 第2章 新手必须掌握的Linux命令
- 熟练掌握C?
- 掌握C++[初学]
- 掌握 Ajax,第 1 部分
- 掌握 Ajax,第 1 部分
- 集群教程¶
- Eclipse ADT 进行android应用签名打包详解
- 生成任意大小文件
- Android 内存优化
- [BetterExplained]为什么你应该(从现在开始就)写博客
- 第2课 掌握C++
- eclipse-maven-sourceTree配置和简单使用
- Linux基本命令(三)
- android使用CountDownTimer类,实现类似抢购的倒计时控件
- MyBatis配置详解
- 第3课 MFC框架程序
- Apache Phoenix的Array类型
- Nginx源代码分析之群惊问题(十七)
- oracle.jbo.RowInconsistentException: JBO-25014: Another user has changed the row with primary key or