码迷,mamicode.com
首页 > 编程语言 > 详细

C++17 新特性

时间:2017-11-02 11:33:03      阅读:184      评论:0      收藏:0      [点我收藏+]

标签:error   log   ++   size   connect   serve   als   cts   strong   

Contracts

 

 

boost::asio

可用于如socket等IO对象的同步或异步操作,

应用程序必须有一个io_service对象. io_service对象负责连接应用程序与操作系统的IO服务.

boost::asio::io_service io_service;

要执行IO操作应用程序需要一个像TCP Socket的IO对象:

boost::asio::ip::tcp::socket socket(io_service);

而后执行同步连接操作,发送如下事件:

1. 应用程序调用IO对象的初始化连接操作:

socket.connect(server_endpoint);

2. IO对象向io_service 提出请求.

3. io_service 调用操作系统的功能执行连接操作.

4. 操作系统向io_service 返回执行结果.

5. io_service将错误的操作结果翻译为boost::system::error_code类型. error_code可与特定值进行比较,或作为boolean值检测(false表示无错误).结果再传递给IO对象.

6. 如果操作失败,IO对象抛出boost::system::system_error类型的异常.

参考链接

http://www.boost.org/doc/libs/1_64_0/doc/html/boost_asio.html

http://blog.csdn.net/henreash/article/details/7469707  

 

 

Concepts

Coroutines

std::apply

C++17 新特性

标签:error   log   ++   size   connect   serve   als   cts   strong   

原文地址:http://www.cnblogs.com/zengyou/p/7770697.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!