博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

2011年7月4日

摘要: 1. GCC对TR1库的支持状况你可以到GCC对TR1的支持状态查看最新状态。目前,GCC对TR1库的支持均实现在单独的文件中,并都统一放在tr1子目录下,例如shared_ptr就位于头文件<tr1/momery>中。目前,GCC 4.3已经支持的TR1库有元组(tuple)、智能指针(shared_ptr、weak_ptr)、数组容器(array)、无序容器(unordered_set、unordered_multiset、unordered_map、unordered_multimap)、类型特性(type_traits)、调用包装与函数对象(mem_fn、reference 阅读全文

posted @ 2011-07-04 17:26 李大嘴 阅读(3374) 评论(0) 推荐(1) 编辑

摘要: 在C++的TR1中(Technology Report)中包含一个function模板类和bind模板函数,使用它们可以实现类似函数指针的功能,但却却比函数指针更加灵活,特别是函数指向类的非静态成员函数时。可以参考Scott Meyers. <<Effective C++ (3rd Edition)>>. Item 35.下面具体说明其使用方法。一、指向全局函数或静态成员函数时因为在本质上讲全局函数和静态成员函数没有区别,使用方法上除了静态成员函数在引用时要在前面加域作用符className::外,没有其它任何区别,事实上全局函数也有可能放入命名空间,或者使用全局域作用 阅读全文

posted @ 2011-07-04 17:16 李大嘴 阅读(16159) 评论(0) 推荐(2) 编辑

摘要: C++中 public,protected, private 访问标号小结,即访问标号使用限制。第一:private, public, protected 访问标号的访问范围。private:只能由1.该类中的函数、2.其友元函数访问。不能被任何其他访问,该类的对象也不能访问。protected:可以被1.该类中的函数、2.子类的函数、以及3.其友元函数访问。但不能被该类的对象访问。public:可以被1.该类中的函数、2.子类的函数、3.其友元函数访问,也可以由4.该类的对象访问。注:友元函数包括3种:设为友元的普通的非成员函数;设为友元的其他类的成员函数;设为友元类中的所有成员函数。第二: 阅读全文

posted @ 2011-07-04 11:36 李大嘴 阅读(8037) 评论(1) 推荐(1) 编辑

摘要: 成员函数的重载、覆盖与隐藏成员函数的重载、覆盖(override)与隐藏很容易混淆,C++程序员必须要搞清楚概念,否则错误将防不胜防。8.2.1 重载与覆盖成员函数被重载的特征:(1)相同的范围(在同一个类中);(2)函数名字相同;(3)参数不同;(4)virtual 关键字可有可无。覆盖是指派生类函数覆盖基类函数,特征是:(1)不同的范围(分别位于派生类与基类);(2)函数名字相同;(3)参数相同;(4)基类函数必须有virtual 关键字。示例8-2-1 中,函数Base::f(int)与Base::f(float)相互重载,而Base::g(void)被Derived::g(void)覆 阅读全文

posted @ 2011-07-04 09:08 李大嘴 阅读(52002) 评论(7) 推荐(3) 编辑