next up previous contents
Next: About this document ... Up: Design Trade-offs Previous: Operator Overload Choices   Contents


When buff_size in a string is greater than length(), the extra pad is placed after the string. By adding a buffer_start field to the string, the string data could float anywhere in the buffer. This could accelerate operations such as lstrip(), cut(), and insert() and would be an interesting variation in certain applications. The drawbacks are the loss of detach(), extra space overhead per-string, and extra complexity in the implementation of Str.