microsoft/GSL
1、使用要求: C++14
看了一些源代码,在string_span.h
中,使用使用C++14 variable template:
template <typename CharT, std::size_t Extent = dynamic_extent>
using basic_zstring = CharT*;
github microsoft/GSL
Read the code
实现从最最基础的、被使用最多的开始阅读,即assert.h
,其中的Expects(cond)
、Ensures(cond)
在整个library中被广泛使用,这是典型的design by contract。