E-Ink News Daily

Back to list

Why Don’t You Use String Views Instead of Passing strings by const&?

A C++ developer explains why blindly replacing const string references with string views can introduce bugs in Win32 code. The article highlights that std::wstring_view lacks null termination, which breaks compatibility with Win32 APIs expecting null-terminated C-style strings. This serves as an important reminder that modern C++ features require context-aware implementation rather than dogmatic application.

Background

String views (std::string_view, std::wstring_view) were introduced in C++17 as a lightweight, non-owning alternative to string parameters, but they lack null termination which can cause issues with legacy C-style APIs.

Source
Lobsters
Published
Apr 1, 2026 at 03:52 PM
Score
6.0 / 10