Convert string_view to string

How do I convert a std::string_view back to a std::string?

To convert a std::string_view back to a std::string, you need to create a new std::string object and pass the std::string_view to its constructor.

This is necessary because std::string_view provides a view over a string without owning the data, while std::string owns and manages the data.

Here's an example:

#include <iostream>
#include <string>
#include <string_view>

int main() {
  std::string_view view{"Hello, world"};
  std::string str{view};  

  std::cout << str;
}
Hello, world

In this example, std::string str{view}; constructs a new std::string by copying the data from the std::string_view. This way, str owns its data, and you can modify it independently of the original view.

Remember, constructing a std::string from a std::string_view involves copying the data, which can be expensive for large strings. Always consider the performance implications in your specific use case.

String Views

A practical introduction to string views, and why they should be the main way we pass strings to functions

Questions & Answers

Answers are generated by AI models and may not have been reviewed. Be mindful when running any code on your device.

Modify string through string_view
Can I modify the contents of a string through a std::string_view?
wstring_view vs string_view
How does std::wstring_view differ from std::string_view?
string_view vs const string&
When should I use std::string_view instead of const std::string&?
Handle dangling string_view
How do I safely handle dangling std::string_view?
string_view performance benefits
How does std::string_view improve performance compared to std::string?
Concatenate string_views
Is it possible to concatenate two std::string_view objects?
string_view vs span
What is the difference between std::string_view and std::span?
string_view in multithreading
Can I use std::string_view in multithreaded applications?
string_view to C-style string
How do I convert a std::string_view to a C-style string safely?
string_view and Encoding
How does std::string_view interact with different character encodings?
Or Ask your Own Question
Get an immediate answer to your specific question using our AI assistant