Skip to content

Commit 13dc881

Browse files
committed
2021-12-01 23:18:01
1 parent 526fbf7 commit 13dc881

File tree

29 files changed

+101
-101
lines changed

29 files changed

+101
-101
lines changed

trans/begin-cpp-game-prog/00.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414

1515
【参考译文】T1,T2,T3,2,T4,5,5,变量,操作符和决策-动画精灵 StutyT7.,在屏幕上覆盖了更多的图形,为了实现这一点,我们需要学习 C++ 的一些基础知识。我们将学习如何使用变量来记忆和操纵值,我们还将开始在游戏中添加更多图形。随着本章的深入,我们将看到如何操纵这些值来设置图形动画。这些值称为变量。
1616

17-
【引用】第 3 章,T2,T3,C + +字符串和 SFML 时间-玩家输入和HUD Ont5,继续木材!!!游戏我们将用本章的一半时间学习如何操作文本并在屏幕上显示,另一半时间学习计时以及视觉时间条如何通知玩家并在游戏中产生紧迫感。我们将包括以下几点:暂停和重新启动游戏,C++ 字符串,SFML 文本和 SFML 字体类,添加一个 HUD 到木材!!!并为木材添加时间条!!!。
17+
【引用】第 3 章,T2,T3,C + +字符串和 SFML 时间-玩家输入和 HUD Ont5,继续木材!!!游戏我们将用本章的一半时间学习如何操作文本并在屏幕上显示,另一半时间学习计时以及视觉时间条如何通知玩家并在游戏中产生紧迫感。我们将包括以下几点:暂停和重新启动游戏,C++ 字符串,SFML 文本和 SFML 字体类,添加一个 HUD 到木材!!!并为木材添加时间条!!!。
1818

1919
【引用】第 4 章,第 3 章,第 3 章,第四章,循环,数组,开关,枚举,和函数-实现游戏力学,T5,也许比书中的其他章节有更多的 C++ 信息。它充满了将极大地提高我们理解力的基本概念。它还将开始揭示一些我们略过的模糊领域,比如函数和游戏循环。一旦我们探索了一个完整的 C++ 语言必需品列表,我们将使用我们所知道的一切来让主要游戏机制树干移动。到本章结束时,我们将为最后阶段和木材完工做好准备!!!。这就是我们将在本章中探讨的内容:循环、数组、使用开关进行决策、枚举、开始使用函数以及创建和移动树分支。
2020

trans/begin-cpp-game-prog/03.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# 三、C++ 字符串和 SFML 时间——玩家输入和HUD
1+
# 三、C++ 字符串和 SFML 时间——玩家输入和 HUD
22

33
在本章中,我们将继续介绍木材!!游戏我们将在本章中花大约一半的时间学习如何操作文本并在屏幕上显示,另一半时间学习计时以及视觉时间条如何告知玩家剩余时间并在游戏中产生紧迫感。
44

@@ -165,7 +165,7 @@ ss<<scoreText<< score;
165165

166166
提示
167167

168-
`<<`运算符是位运算符之一。但是,C++ 允许您编写自己的类并覆盖特定操作符在类的上下文中所做的操作。`sstream`类这样做是为了让`<<`操作符按照它的方式工作rk。复杂性隐藏在类中。我们可以使用它的功能,而不用担心它是如何工作的。如果您有冒险精神,可以在[上阅读有关操作员过载的信息 http://www.tutorialspoint.com/cplusplus/cpp_overloading.htm](http://www.tutorialspoint.com/cplusplus/cpp_overloading.htm) 。你不需要更多的信息来继续这个项目。
168+
`<<`运算符是位运算符之一。但是,C++ 允许您编写自己的类并覆盖特定操作符在类的上下文中所做的操作。`sstream`类这样做是为了让`<<`操作符按照它的方式工作 rk。复杂性隐藏在类中。我们可以使用它的功能,而不用担心它是如何工作的。如果您有冒险精神,可以在[上阅读有关操作员过载的信息 http://www.tutorialspoint.com/cplusplus/cpp_overloading.htm](http://www.tutorialspoint.com/cplusplus/cpp_overloading.htm) 。你不需要更多的信息来继续这个项目。
169169

170170
现在我们知道了 C++ 字符串的基本原理以及如何使用 AutoT0T,我们将研究如何使用一些 SFML 类来在屏幕上显示它们。
171171

trans/begin-cpp-game-prog/09.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -567,7 +567,7 @@ if (state == State::PLAYING)
567567

568568
![](img/B14278_09_03.jpg)
569569

570-
他re,注意玩家精灵如何在竞技场的范围内平滑地滑行和旋转。尽管`main`函数中的当前代码绘制了一个小竞技场,`CreateBackground`函数可以创建任何大小的竞技场。我们将在[*第 13 章*](13.html#_idTextAnchor279)*音效、文件 I/O 和游戏结束*中看到比屏幕更大的竞技场。
570+
他 re,注意玩家精灵如何在竞技场的范围内平滑地滑行和旋转。尽管`main`函数中的当前代码绘制了一个小竞技场,`CreateBackground`函数可以创建任何大小的竞技场。我们将在[*第 13 章*](13.html#_idTextAnchor279)*音效、文件 I/O 和游戏结束*中看到比屏幕更大的竞技场。
571571

572572
# 总结
573573

trans/boost-asio-cpp-net-prog-2e/1.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010

1111
这是最难的部分——我们必须选择一个编译器。尽管我意识到每个编译器都有自己的优点和缺点,但我想让您更容易地浏览本章中的所有代码。因此,我建议您应用与我们相同的环境,包括我们使用的编译器。
1212

13-
我将使用 GNU 编译器集合 **GCC** ,因为它是广泛使用的开源。由于我的环境包括微软视窗作为操作系统,我将使用T4【视窗的极简主义 GCC】(**MinGW**)作为我的 C++ 编译器。对于那些没有听说过 GCC 的人来说,它是一个 C/C++ 编译器,你可以在 Linux 操作系统中找到,它也包含在 Linux 发行版中。MinGW 是海湾合作委员会在视窗环境下的一个港口。因此,本书中的整个代码和示例适用于任何其他 GCC 风格。
13+
我将使用 GNU 编译器集合 **GCC** ,因为它是广泛使用的开源。由于我的环境包括微软视窗作为操作系统,我将使用 T4【视窗的极简主义 GCC】(**MinGW**)作为我的 C++ 编译器。对于那些没有听说过 GCC 的人来说,它是一个 C/C++ 编译器,你可以在 Linux 操作系统中找到,它也包含在 Linux 发行版中。MinGW 是海湾合作委员会在视窗环境下的一个港口。因此,本书中的整个代码和示例适用于任何其他 GCC 风格。
1414

1515
## 安装 MinGW-w64
1616

trans/boost-asio-cpp-net-prog-2e/2.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ OSI 模型用于连接到开放的系统——这些系统是开放的,并与
2424

2525
数据链路层的主要作用是为原始数据传输提供链路。在传输数据之前,数据被分解成数据帧,数据链路层连续传输这些数据帧。如果服务可靠,接收器将为每个已发送的帧发回一个*确认帧*
2626

27-
该层由两个子层组成:**逻辑链路控制** ( **LLC** )和**媒体访问控制** ( **MAC** )。LLC 子层负责传输错误检查并处理帧传输,而MAC 子层定义如何从物理介质中检索数据或将数据存储在物理介质中。
27+
该层由两个子层组成:**逻辑链路控制** ( **LLC** )和**媒体访问控制** ( **MAC** )。LLC 子层负责传输错误检查并处理帧传输,而 MAC 子层定义如何从物理介质中检索数据或将数据存储在物理介质中。
2828

2929
我们还可以在这一层找到 MAC 地址,也称为**物理地址**。媒体访问控制地址用于识别连接到网络的每个设备,因为它对每个设备都是唯一的。使用命令提示符,我们可以通过在控制台窗口中键入以下命令来获取地址:
3030

@@ -772,7 +772,7 @@ Trace complete.
772772

773773
```
774774

775-
在第 10行和第 11 行,我们获得了 100%的数据包丢失,因为发送到网络的数据包丢失了 100 个。然而,这是不可能的,因为数据没有到达目的路由器,因为 ICMP 被路由器阻止。使用此命令,我们可以确定在哪个特定路由器中会遇到大比例的数据丢失,尤其是在连接了许多路由器的大型网络中。
775+
在第 10 行和第 11 行,我们获得了 100%的数据包丢失,因为发送到网络的数据包丢失了 100 个。然而,这是不可能的,因为数据没有到达目的路由器,因为 ICMP 被路由器阻止。使用此命令,我们可以确定在哪个特定路由器中会遇到大比例的数据丢失,尤其是在连接了许多路由器的大型网络中。
776776

777777
我们也可以使用`–q`选项改变发送到路由器的请求数量。我们只需要在选项后说明新的请求数量,如下所示:
778778

trans/boost-asio-cpp-net-prog-2e/4.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -104,7 +104,7 @@ g++ -ansi -std=c++ 11 -I ../boost_1_58_0 concurrent.cpp -o concurrent -L ../boos
104104

105105
# 检查提升中的输入/输出服务.Asio 库
106106

107-
`Boost::Asio`命名空间的核心对象是`io_service`**输入/输出服务**是一个通道,用于访问操作系统资源,并在我们的程序和执行输入/输出请求的操作系统之间建立通信。还有一个I/O 对象有提交 I/O 请求的作用。对于实例,`tcp::socket`对象将从我们的程序向操作系统提供套接字编程请求。
107+
`Boost::Asio`命名空间的核心对象是`io_service`**输入/输出服务**是一个通道,用于访问操作系统资源,并在我们的程序和执行输入/输出请求的操作系统之间建立通信。还有一个 I/O 对象有提交 I/O 请求的作用。对于实例,`tcp::socket`对象将从我们的程序向操作系统提供套接字编程请求。
108108

109109
## 使用和阻止 run()功能
110110

trans/boost-asio-cpp-net-prog-2e/5.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# 五、深入研究 Boost.Asio库
1+
# 五、深入研究 Boost.Asio 库
22

33
现在我们已经能够运行`io_service`对象并给它一些工作要做,是时候在`Boost.Asio`库中找到更多关于其他对象的信息,以便开发网络应用了。我们之前使用的`io_service`对象的所有工作都是异步运行的,但不是以序列化的顺序运行的,这意味着我们无法确定`io_service`对象将要运行的工作的顺序。此外,我们必须考虑如果我们的应用在运行时遇到任何错误,我们将做什么,并考虑运行任何`io_service`对象工作的时间间隔。因此,在本章中,我们将讨论以下主题:
44

trans/boost-asio-cpp-net-prog-2e/7.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -100,7 +100,7 @@ g++ -Wall -ansi -I ../boost_1_58_0 rangen_boost.cpp -o rangen_boost_gdb -g
100100

101101
# 在 GDB 的领导下运行程序
102102

103-
准备好包含调试信息和符号的可执行文件后,让我们运行 GDB从文件中读取所有符号并进行调试。运行以下命令启动调试过程:
103+
准备好包含调试信息和符号的可执行文件后,让我们运行 GDB 从文件中读取所有符号并进行调试。运行以下命令启动调试过程:
104104

105105
```cpp
106106
gdb rangen_boost_gdb

trans/boost-cpp-app-dev-cb/04.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -561,7 +561,7 @@ using int_ = std::integral_constant<int, Value>;
561561

562562
# 请参见
563563

564-
* [第八章](08.html#CL9V20-712b4ba1126a4c7c89e1d44de61b4bdd)*元编程*中的食谱会给你更多`Boost.MPL`库用法的例子。如果你有信心,你也可以尝试阅读 http://boost.org/libs/mpl链接的图书馆文档
564+
* [第八章](08.html#CL9V20-712b4ba1126a4c7c89e1d44de61b4bdd)*元编程*中的食谱会给你更多`Boost.MPL`库用法的例子。如果你有信心,你也可以尝试阅读 http://boost.org/libs/mpl 链接的图书馆文档
565565
*[http://boost . org/libs/type _ traits/doc/html/boost _ type traits/examples/fill . html](http://boost.org/libs/type_traits/doc/html/boost_typetraits/examples/fill.html)[http://boost . org/libs/type _ traits/doc/html/boost _ type traits/examples/copy . html](http://boost.org/libs/type_traits/doc/html/boost_typetraits/examples/copy.html)阅读更多标签用法示例。
566566

567567
# 实现类型特征

trans/boost-cpp-app-dev-cb/05.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -299,7 +299,7 @@ If you initialize a common variable and then construct threads that only read it
299299
# 请参见
300300

301301
* 下一个食谱将告诉你如何让这个例子更快(更短)。
302-
* 阅读本章第一个食谱,了解更多关于`boost::thread`课程的信息。http://boost.org/libs/thread的官方文件也可能对你有所帮助
302+
* 阅读本章第一个食谱,了解更多关于`boost::thread`课程的信息。http://boost.org/libs/thread 的官方文件也可能对你有所帮助
303303
* 要了解第一个例子失败的原因以及多处理器如何使用公共资源的更多信息,请参见[上的*内存障碍:软件黑客的硬件视图*。注意,这是一个很难的话题。](http://www.rdrop.com/users/paulmck/scalability/paper/whymb.2010.07.23a.pdf)
304304

305305
# 使用原子快速访问公共资源

0 commit comments

Comments
 (0)