用map::erase的时候要注意,这个函数是有版本差异的,vc下使用的stl是P.J. Plauger stl版本,dev下使用的是sgi stl。这两个版本的map::erase有所区别,前者有返回值,后者没有返回值,标准库中提供的接口是没有返回值的,所以对于P.J. Plauger stl版本的使用者,在使用这个函数时,为了能保证移植性,最好能写成以下形式:
本文讨论了不同版本的STL库中map::erase函数的行为差异,特别是在P.J.Plauger STL与sgi STL之间的区别。展示了如何编写兼容代码以确保函数在不同环境下的一致性。
用map::erase的时候要注意,这个函数是有版本差异的,vc下使用的stl是P.J. Plauger stl版本,dev下使用的是sgi stl。这两个版本的map::erase有所区别,前者有返回值,后者没有返回值,标准库中提供的接口是没有返回值的,所以对于P.J. Plauger stl版本的使用者,在使用这个函数时,为了能保证移植性,最好能写成以下形式:
2626
2396

被折叠的 条评论
为什么被折叠?