- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
C演示稿件
C++
WindyWinter
windy@ream.at
课程适用性
迫于时间所限,本课程只能面向C语言程序设计基础较好的同学。
希望经过短期训练,让大家能读懂WrightEagleBASE中涉及语言特性的部分。
合格的C++入门和参考书籍有C++ Primer、The C++ Programming Language和Thinking in C++。
C语言复习
整型
类型(C++)
下限
上限
short (int)
-32767
32767
(long) int
-2147483647
2147483647
long long (int)
-922337203689223372036854775807
类型(C)
下限
上限
(short) int
-32767
32767
long (int)
-2147483647
2147483647
long long (int)
-922337203689223372036854775807
浮点型
浮点数也是离散的。
浮点数的内部表示也是二进制,比如float,一共32个二进制位,所以不可能表示出超过2^32个数字。
IEEE 754
浮点数的比较
if (a == b) X
if (fabs(a-b) FLT_EPSILON) O
if (fabs(a-b) DBL_EPSILON) O
其它类型
_Bool
float _Complex / double _Complex
衍生类型
array、structure、union、function、pointer
类型限定符
const、volitile、restricted
void类型
取值集合为空集的类型
其它类型
bool
complexfloat / complex double
衍生类型
array、structure、union、function、pointer
类型限定符
const、volitile、restricted
void类型
取值集合为空集的类型
指针
float * const float指针常量类型
const float * 常量float类型的指针类型
DecisionDataDerived ** 指针的指针
E1[E2] (*((E1)+(E2)))
A[3] *(A+3)
3[A] *(3+A) = *(A+3)
const和#define
#define属于预编译的范围,“符号替换”;const定义的是“不能修改的”变量。
#define只能定义有“字面值”的常量;const可以定义数组、结构体和union常量。
enum可以定义整数常量,一般用于互相关联的一组整数。
enum PlayMode{}
预编译指令
#include 后面不是“字符串”,是用引号或者括起来的文件名。
条件编译
#define 符号
#undef 符号
#if / #elif 字面值常量表达式
#ifdef / #ifndef / #else 符号
不符合#if条件的代码段编译器不编译
预编译指令
#define中“#”的用法
#x 将x变成字符串
x##y 将x与y连接起来
#define TeammateFormationTactic(TacticName) (*(FormationTactic##TacticName *)mFormation.GetTeammateTactic(FTT_##TacticName))
TeammateFormationTactic(KickOffPosition) *(FormationTacticKickOffPosition*)mFormation.GetTeammateTactic(FTT_KickOffPosition))
其它
sizeof运算符
size_t fsize(int n) { char t[n+3]; return sizeof(t);}fsize(10) - 13
inline函数
static变量
C++标签
即时声明
C语言要求所有变量的声明必须在实意语句之前,也就是在所有{}的外面,或者是每对{}的最前面。
C++没有了这样的限制,变量只要遵循先声明后使用的原则就可以了,不再要求必须放在什么地方。我们可以在for语句头部塞上一个int i(0),for (int i(0); i 10; ++i)。
“int i(0)”里的(0)是指将i初始化为0,作用相当于int i=0。
引用
引用(reference)是C++新定义的一种复合类型,其本意可以理解为变量的“别名(alternate name)”。
声明/定义一个引用:int a;int r = a;
r被定义为
原创力文档


文档评论(0)