我知道原因了。
你的LVAR类型转化与LPoint的构造函数有歧义。显示指定一下就可以了
比如
LButtonDownEvent(v[0].operator LPoint()); // 直接调用
LButtonDownEvent(LPoint(v[0].operator LPoint())); //默认拷贝构造
LButtonDownEvent(LPoint(v[0].operator long())); // LPARAM构造
或者你把LPoint的拷贝构造显示的给出来。这样LPoint(v[0])的时候,编译器的隐式类型转换系统也不会有歧义了,就能成功。
原因:
LPoint(v[0])的时候,v[0]会有多个隐士类型转换会匹配到LPoint的多个构造(拷贝构造,LPARAM构造)。但是LPoint的拷贝构造并没有显示给出来,编译器认为这个隐士转换不能随意进行。要么你显示,要么你把拷贝构造补全.
【 在 mazheng75 的大作中提到: 】
:
--
修改:foliver FROM 140.206.195.*
FROM 140.206.195.*