Tôi có một phương pháp mất std::string_view
và sử dụng chức năng, trong đó có null chấm dứt chuỗi như tham số. Ví dụ:Sử dụng std :: string_view với api, những gì mong đợi null chấm dứt chuỗi
void stringFunc(std::experimental::string_view str) {
some_c_library_func(/* Expects null terminated string */);
}
Câu hỏi là, cách thích hợp để xử lý tình huống này là gì? Có phải str.to_string().c_str()
là tùy chọn duy nhất không? Và tôi thực sự muốn sử dụng std::string_view
trong phương pháp này, bởi vì tôi vượt qua các loại chuỗi khác nhau trong đó.
sử dụng tốt cho VLA. – user1095108
@ user1095108 nhưng bất kỳ trình biên dịch nào cho phép VLAs trong C++ đang áp dụng một phần mở rộng không chuẩn, vì vậy tôi sẽ nói VLAs không bao giờ có thể tốt đẹp. : P –
Chúng thực sự được hỗ trợ ở khắp mọi nơi thông qua alloca, bạn có thể làm cho chúng di động – user1095108