Câu hỏi được gắn thẻ «c++20»

C ++ 20 là mục tiêu cho phiên bản C ++ sau C ++ 17. Thẻ này nên được sử dụng (cùng với thẻ C ++) cho các câu hỏi về các tính năng của C ++ trên đường đua cho C ++ 20.


3
Khái niệm C ++ 20: Chuyên môn hóa mẫu nào được chọn khi đối số mẫu đủ điều kiện cho nhiều khái niệm?
Được : #include <concepts> #include <iostream> template<class T> struct wrapper; template<std::signed_integral T> struct wrapper<T> { wrapper() = default; void print() { std::cout << "signed_integral" << std::endl; } }; template<std::integral T> struct wrapper<T> { wrapper() = default; void print() { std::cout << "integral" << std::endl; } }; int main() { wrapper<int> …





2
Tại sao khái niệm same_as kiểm tra loại bằng hai lần?
Nhìn vào khả năng triển khai của khái niệm same_as tại https://en.cppreference.com/w/cpp/con accept / same_as tôi nhận thấy điều gì đó kỳ lạ đang xảy ra. namespace detail { template< class T, class U > concept SameHelper = std::is_same_v<T, U>; } template< class T, class U > concept same_as = …
19 c++  c++20  concept 

4
Enum liên tục C ++ 11
Có cách nào để kiểm tra C ++ 11 nếu enum liên tục không? Nó hoàn toàn hợp lệ để đưa ra một giá trị enum không. Có thể có một tính năng như một đặc điểm loại trong C ++ 14, C ++ 17 hoặc có thể C ++ …
17 c++  c++11  c++14  c++17  c++20 






2
Là std :: chrono :: năm lưu trữ thực sự ít nhất 17 bit?
Từ cppreference std::chrono::years (since C++20) duration</*signed integer type of at least 17 bits*/, std::ratio<31556952>> Sử dụng libc++, có vẻ như việc lưu trữ nhấn mạnh của std::chrono::yearslà shortcó chữ ký 16 bit . std::chrono::years( 30797 ) // yields 32767/01/01 std::chrono::years( 30797 ) + 365d // yields -32768/01/01 apparently UB Có …
14 c++  chrono  c++20  libc++ 

1
nếu constexpr - tại sao câu lệnh bị loại bỏ hoàn toàn được kiểm tra?
Tôi đã loay hoay với c ++ 20 consteval trong GCC 10 và đã viết mã này #include <optional> #include <tuple> #include <iostream> template <std::size_t N, typename Predicate, typename Tuple> consteval std::optional<std::size_t> find_if_impl(Predicate&& pred, Tuple&& t) noexcept { constexpr std::size_t I = std::tuple_size_v<std::decay_t<decltype(t)>> - N; if constexpr (N == 0u) …

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.