contravariance
来源:互联网 发布:写日本战国的小说知乎 编辑:程序博客网 时间:2024/05/17 10:06
反变:把基类里指向成员函数的指针指向派生类中的成员函数。很可能导致错误,就好像把派生类指针指向基类一样。
- #include <iostream>
- using namespace std;
- class Base
- {
- public:
- void foo(){}
- };
- class Derived: public Base
- {
- public:
- void goo(){}
- };
- typedef void (Base::*MethodOfBase)();
- typedef void (Derived::*MethodOfDerived)();
- int main()
- {
- MethodOfBase methodB;
- MethodOfDerived methodD;
- methodB = static_cast<MethodOfBase>(&Derived::goo); // contravariance
- methodB = &Base::foo; // it is OK
- methodD = &Derived::goo; // it is OK
- methodD = &Base::foo; // it is OK
- return 0;
- }
- contravariance
- Covariance and Contravariance
- Covariance, Contravariance and Invariance
- Invariance, covariance and contravariance
- Covariance and Contravariance in Java
- .NET 4.0 “Covariance”和“Contravariance”趣话
- .NET 4.0 “Covariance”和“Contravariance”趣话
- 协变(Covariance)与逆变(Contravariance)
- .Net 2.0 新功能:委托中的协变与逆变(Covariance and Contravariance in Delegates)
- Covariance and Contravariance in Generics(泛型中的协变和逆变)
- 对协变和逆变的理解(Contravariance and Covariance)
- C# 入门(13) 泛型(generic)、协变(convariance)、逆变(contravariance)
- 协变(covariance),逆变(contravariance)与不变(invariance)
- Delegate(委托)中的Covariance(协变)和Contravariance(逆变)
- eclipse alt+/ 失效的解决
- 版本控制+备份,降低代码管理风险.
- Linux网络编程-客户端与服务器端异步通信
- C/C++头文件一览
- 修复RHEL5添加/删除软件包管理BUG
- contravariance
- 也谈男士品牌(综合版)
- 优化编程的几个方法[转贴]
- 对于大数求阶乘
- Linux脚本中实现终端输入
- 语言的五种功能和语言的境界
- HttpSession的线程安全问题及注意事项
- thanks for csdn
- winio的使用