一个语句块(又名。一个复合语句)由编译器处理,好像它是一个语句一样。这些都放在大括号({和})之间,并且在任何地方都使用过。
当该块是输入的一部分,当它退出时被破坏时,局部变量被创建。他们只能在他们被声明的块内访问。
全局变量在程序启动时被创建,并且在结束时被销毁。他们可以在程序中使用任何地方。非const的全局变量,一般应避免因为他们是邪恶的。
静态关键字可以用来提供一个全局变量的内部链接,所以它只能在声明它的文件中使用。它也可以用来给一个局部变量的静态持续时间,这意味着本地变量保留它的值,即使它超出范围。
当一个类型转换成另一种类型而不使用强制转换时,会发生隐式类型转换。当一个类型转换为另一个使用强制转换时,将发生显式类型转换。在某些情况下,这是完全安全的,而在其他情况下,数据可能会丢失。避免使用C风格转换和static_cast相反。
的字符串提供了一个简单的处理文本字符串的方法。字符串总是放在双引号之间。
让我们为一个类型定义的名称创建一个别名。固定宽度的整数使用typedef。typedef用于给简单的名称,类型复杂。
最后,结构为我们提供了一种组相关的变量到一个单一的结构和访问他们使用成员选择运算符(。)。面向对象的编程建立在这些基础上,所以如果你从本章中学习一件事,请确保这是一个。
问答时间!
耶。
1)在设计一个游戏,我们决定我们要有怪物,因为每个人都喜欢战斗怪物。声明一个结构体,代表你的怪物。怪物应该可以有以下类型:一个怪物,一个龙,一个兽人,一个巨大的蜘蛛,或泥。如果你使用C++ 11,使用枚举类此。如果您使用的是旧的编译器,使用此枚举。
每一个单独的怪物也应该有一个名字,以及一个数量的健康,代表了多少伤害,他们可以采取之前,他们死了。写一个函数命名printmonster()打印出所有的struct的成员。实例化一个食人魔和煤泥,初始化使用初始化列表,并通过他们向printmonster()。