gpt4 book ai didi

c++ - 在 GCC 8 之前是否可以在常量表达式中使用 std::char_traits

转载 作者:行者123 更新时间:2023-12-01 14:47:16 24 4
gpt4 key购买 nike

根据GCC 8 Release Note ,现在可以使用 std::char_traits<char>std::char_traits<wchar_t>在常量表达式中:

  • Improved experimental support for C++17, including the following features:
    • std::char_traits and std::char_traits<wchar_t> are usable in constant expressions.

我的理解是你不能使用 std::char_traits<char>在 GCC 8 之前的常量表达式中。
但是,以下代码与 GCC 7.5 编译良好:
#include <string_view>

int main() {
constexpr std::string_view sv{""};
constexpr std::size_t size = std::char_traits<char>::length(sv.data());

return 0;
}
那么,是否可以在 GCC 8 之前在常量表达式中使用 std::char_traits ?或者我错过了什么?

最佳答案

这个改进是 backported from mainline .从 7.3 开始,它在 gcc 7 行中可用。

关于c++ - 在 GCC 8 之前是否可以在常量表达式中使用 std::char_traits<char> ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63054102/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com