搜索了此内容,但最好的结果只是复制了字符串。
给出以下简单代码段:
struct custom_string_traits: std::char_traits<char> {
static bool eq(char c, char d) { ... }
static bool lt(char c, char d) { ... }
...
};
typedef std::basic_string<char,custom_string_traits> my_string;
我应该如何执行诸如
的操作std::string foo = "baz";
my_string bar = "qux";
x::swap(foo, bar);
/* OR */
foo = std::move(bar);
我想在当前程序之外进行优化:
std::string foo = "baz";
my_string bar = "qux";
my_string next(foo.c_str(), foo.size());
foo.assign(bar.c_str(), bar.size());