re: COM思想的背后 永遇乐 2013-07-22 09:25
微软通过修改VC编译器(提供新的关键字),让C++的对象之间拥了有一定的通信能力,这里面关键的就是这个iid,通过iid可以在运行时获取某个对象的成员函数指针,然后调用之,这就相当于对象与对象之间通信了。
这也达到了Object C中对象之间通信的效果(一个对象A给另一个对象B发消息M,B收到消息M后,能处理就处理,不能处理就算了)。
而在COM中,A对象要先看B对象能不能处理消息M,即A先查一下,B对象有没有处理M消息的那个成员函数HandleM() (即B对象中有没有哪个接口中有HandleM()方法),如果有(查到了),则调用HandleM(M)。没查到嘛,当然就算了。
re: XP之后Windows的一些变化 永遇乐 2013-07-18 14:06
学习了,希望能早点进入到win7平台上编程。等到2014年,微软不再管xp后,估计公司才会使用win7
等C++语法支持concept了,就能更自然地造出interface了
我试过了,还是不行啊。
比如:
vector<int> v;
v.at(0);//这种异常就捕获不到啊