1、boost asio 教程---介绍

介绍 这是一组关于在C++中使用异步I/O的教程,这主要是关于网络编程的。为了顺利进行,您应该熟悉现代C++,STL和Boost风格的编码,以及基本的网络和多线程原理。

我们将使用Boost.Asio,Boost.Beast和(或)C++20 Networking库。为了实现异步控制流程,我们将使用completion handlers,coroutines或fibers。

要从给定的示例编译源代码,您需要C++17编译器和安装的Boost库。您需要将Boost库添加到include目录,并将您的应用程序链接到其编译的源代码。

事实上,对于大多数示例,您所需要的只是编译boost/libs/system/src/error_code.cpp-其余的Boost源代码都是仅头文件库,太棒了!

网络通常被那些刚开始学习它的人认为是棘手的主题。它真的很棘手吗?答案是肯定的,也不一定。要成为专家需要时间,但我会尽量让事情变得尽可能简单,以便您顺利开始。

在现实生活中,您应该使用namespace和类型别名来保持整洁。稍后我会开始这样做,在您清楚地了解事情的来龙去脉之后。因此,您将看到boost::asio::ip::tcp::socket这样的东西,在您的生产代码中应该别名为tcp::socket这样的东西。

网络的两大类别是客户端和服务器。教程作者通常从客户端开始,因为它被认为是一条小鱼。我将从服务器开始。第一-因为服务器是C++真正闪耀的领域。第二-它实际上并没有看起来那么可怕。

好的,介绍完毕,让我们开始吧!

猜你喜欢

转载自blog.csdn.net/Knowledgebase/article/details/132716465