Skip to main content
All Questions

Design a SmartString class template whose only storage is a char array of STORAGE_SIZE bytes, with constant-time length() and a null-terminated c_str().

Unlock detailed company stats for this questionUpgrade
Design a class template SmartString that takes a size_t template parameter STORAGE_SIZE, defaulting to 16. The object's only storage is a char array of STORAGE_SIZE bytes: there is no separate member for the length. It must support a default constructor; a constructor from (const char* s, size_t len), where s is guaranteed to contain no null character; c_str(), returning a null-terminated const char*; length(), in constant time; and max_size(), which is STORAGE_SIZE - 1.

Community answers

No answers contributed by the community yet.

Related courses

Course

Behavioral Interviews: A Practical Guide for Engineers

Get offers at the level you deserve. Prep for senior+ behavioral interviews at FAANG and Tier-1 companies. Made with staff and principal engineers from Meta, Netflix, Google, and more. Avoid downleveling, elevate past projects, and stop sounding like a robot.

Course

Software Engineering Interview Prep

Land your dream software engineering role at Google, Amazon, Microsoft, Meta, Apple, and other top companies. Learn from mock interviews, frameworks, and advice from senior candidates—practice data structures, algorithms, system design, people management, behavioral interviews, and more.