有没有办法可以删除CString中的字符范围?

时间:2017-03-23 20:57:38

标签: string visual-c++ mfc erase

因为我们可以在std :: string中使用string.erase函数来删除某些字符范围,所以我可以使用任何函数来删除字符。

例如:

std::string string = "This is a test".

我可以用

string.erase(2,(string.length()));

CString中是否有类似的方法?

感谢。

3 个答案:

答案 0 :(得分:5)

CString::Left()CString::Right()个功能。代码的替代方法是:

CString result = string.Left(2);

或者,如果您想删除中间的字符,可以使用以下内容:

CString result = string.Left(removeStart) + string.Right(removeEnd);

答案 1 :(得分:0)

当然可以。看看CString Extraction Methods

您的代码段可以通过

实现
CString s = "This is a test".
s = s.Left(2);
ASSERT(s == "Th");

要删除一系列字符以保留前m个和前n个字符,您可以执行以下操作:

s = s.Left(m) + s.Right(n);

答案 2 :(得分:0)