0
我想知道是否有某種方法可以告訴std::string
到版本它正在使用的char*
。從std :: string中提取const char而不復制?
我想像它有char*
類型的字段的std::string
某處,我想一些會以類似的東西的方法:
const char* std::string::release() {
const char* result = __str;
__size = 0;
__capacity = INITIAL_CAPACITY_WHATEVER;
__str = new char[INITIAL_CAPACITY_WHATEVER];
return result;
}
不就是抄襲內容是問題還是會影響我表演,我只是在浪費時間來複制我剛剛要刪除的內容而感到不舒服。
不,沒有,除了將它移動到另一個'std :: string'。你爲什麼需要這個?爲什麼你不能只用'c_str()'? –
@BenjaminLindley我不需要。我只是想知道。 –
@BenjaminLindley:每當我看到像這樣的東西,我的第一個想法是「C API /互操作」。也許他需要將'char **'傳遞給可能重新分配它的函數? –