From Jason Turner
Watch on YouTube

Summary

This episode explores the confusing behavior and inconsistent semantics of std::string's eleven different constructors. Jason demonstrates how two similar-looking constructor calls can have completely opposite meanings due to parameter ordering and defaults. He specifically highlights the difference between the const char* constructor (which takes count as how many characters to read) versus the std::string constructor (which takes position as where to start reading from), showing how this can lead to subtle but significant bugs.

Resources

Tags