首页 相关文章 vc++ 6.0标准库string类的bug

vc++ 6.0标准库string类的bug

basic_string类的用途
basic_string并不象它的名字那样,只可能是一个字符串。有时候,它不那么象字符串。例如:

typedef std::basic_stringdouble DoubleArray;
此时,basic_string是一个double类型的动态数组。你可能说,为什么不用vector呢?如下:

typedef std::vectordouble DoubleArray;
这两者有什么不同?其实最大的不同,在于basic_string类通常是基于copy-on-write技术的。这意味着basic_string的赋值操作(operator=)只是一个简单的加引用计数(AddRef),是相当快速的。而vector类的赋值操作则是真正的内存拷贝过程。

现在我要实现一个矩阵(Matrix)类。你可以想象一下现在要矩阵的各种运算,例如加法(operator+):

Matrix operator+(const Matrix& a, const Matrix& b)
{
Matrix result = a;
result += b;
return...[ 查看全文 ]

2016-02-19 标签:

vc++ 6.0标准库string类的bug的相关文章

手机页面
收藏网站 回到头部