According [cppreference](http://en.cppreference.com/w/cpp/string/basic_string/basic_string) basic\_string have 11 constructors.

11-th constructor seems very strange, because it take template unknown T type.

```
template < class T >
basic_string( const T& t, size_type pos, size_type n,
              const Allocator& alloc = Allocator() );

```

As I know, it uses when construct string from string\_view from pos , and count characters.

*11) Implicitly converts t to a string view sv as if by `std::basic_string_view<CharT, Traits> sv = t;`, then initializes the string with the subrange [pos, pos + n) of sv as if by `basic_string(sv.substr(pos, n), a)`. This overload only participates in overload resolution if `std::is_convertible_v<const T&, std::basic_string_view<CharT, Traits>>` is true.*

**Q: Why there DON'T added exactly** `basic_string(basic_string_view, size_t pos, size_t count, Alloc )` **constructor?**

**Upd: Q2: Where is useful this 11-th constructor?**