摘要:
和上一篇remove,remove_if相同,unique也是algorithm中的方法,故使用时应包含该头文件。unique方法本意为去重(去除重复元素),但是功能限制为只能对附近相邻的元素进行比较,所以要和sort方法放在一起联合使用,才能实现其效果,否则如下面的代码中无序的排列并不能实现其去重的效果: 1 int main(int argc, char* argv[]) 2 { 3 std::vector<int> vec; 4 vec.push_back(6); 5 vec.push_back(2); 6 vec.push_back(3); 7 ... 阅读全文
摘要:
remove 和 remove_if方法都是包含在<algorithm>头文件当中的,先来看看原型: 1 // TEMPLATE FUNCTION remove 2 template<class _FI, class _Ty> inline 3 _FI remove(_FI _F, _FI _L, const _Ty& _V) 4 {_F = find(_F, _L, _V); 5 if (_F == _L) 6 return (_F); 7 else 8 {_FI _Fb = _F; 9 return (remo... 阅读全文
摘要:
参见 http://wenku.baidu.com/view/a0c2843f87c24028915fc348.html 拥有虚函数的类会有一个虚表,而且这个虚表存放在类定义模块的数据段中。模块的数据段通常存放定义在该模块的全局数据和静态数据,这样我们可以把虚表看作是模块的全局数据或者静态数据。 类的虚表会被这个类的所有对象所共享。类的对象可以有很多,但是他们的虚表指针都指向同一个虚表,从这个意义说,我们可以把虚表简单理解为类的静态数据成员。值得注意的是,虽然虚表是共享的,但是虚表指针并不是,类的每一个对象有一个属于它自己的虚表指针。·虚表中存放的是虚函数的地址,正好也验证了C++教 阅读全文