std::string
使用しているを解放するように指示する方法があるかどうか疑問に思っていましchar*
た。
のどこかにstd::string
type のフィールドがあるchar*
と思いますが、そのようなことを行うメソッドが必要でした:
const char* std::string::release() {
const char* result = __str;
__size = 0;
__capacity = INITIAL_CAPACITY_WHATEVER;
__str = new char[INITIAL_CAPACITY_WHATEVER];
return result;
}
コンテンツのコピーが問題になったり、パフォーマンスに影響を与えたりするわけではありません。後で削除しようとしているものをコピーして時間を無駄にすることに不快感を感じていました。