Sử dụng C ++ 11, Ubuntu 14.04, chuỗi công cụ mặc định GCC .
Mã này không thành công:
constexpr std::string constString = "constString";
lỗi: loại 'const chuỗi {aka const std :: basic_opes}' của biến constexpr 'constString' không theo nghĩa đen ... bởi vì ... 'std :: basic_opes' có hàm hủy không tầm thường
Có thể sử dụng std::string
trong một constexpr
? (dường như không ...) Nếu vậy, làm thế nào? Có cách nào khác để sử dụng chuỗi ký tự trong a constexpr
không?
std::string
trở thành constexpr? có một số triển khai chuỗi thời gian biên dịch trên SO. điểm quan trọng trong việc hỏi liệu bạn có thể tạo một constexpr không theo nghĩa đen không nếu bạn hiểu thông báo lỗi và chỉ biết các loại chữ có thể được tạo thành constexpr? cũng có một số lý do tại sao một người có thể muốn có một ví dụ constexpr, vì vậy tôi khuyên bạn nên làm rõ câu hỏi của mình
constexpr
triển khai chuỗi ra khỏi đó. std::string
không phải là một trong số họ.
std::string
không phải là một loại chữ