Irrlicht3d编程的两个常见错误解决

 错误一:5 I v2 U3 b/ x$ M6 F$ q3 A
/ Q2 O8 R( P# e
error C2259: 'MyEventReceiver' : cannot instantiate abstract class                       
" D' r$ Y" j2 m, g4 Rdue to following members:               
  z; X+ r, `" _% n" S% y* a      'bool irr::IEventReceiver::OnEvent(const irr::SEvent )' : is abstract               
3 @; `. J6 p  D( {: V$ x: y% V' e v
: D. w- q! S# G- M! b0 g原因是在按照Irrlicht的教程做时,由一个地方教程里有问题,有问题的地方标注如下红色:
: F; k' v. i" K5 v- Z( o( _* i$ z2 n$ X5 N
class MyEventReceiver : public IEventReceiver
, a0 d7 p* W) J{: y2 g/ c. d; s: F: R, U' r9 `' ?
public:) d' u5 q) E  O ~9 b
    virtual bool OnEvent(SEvent event)
5 o/ O1 K N. U0 p  b    {
: ^( ]% h$ C- V1 c        if (event.EventType == EET_GUI_EVENT)
5 C3 ]* n5 }; |- u1 _+ ]6 g* t        {5 W- I0 n* ?7 T8 F, p2 ]* D
            s32 id = event.GUIEvent.Caller->getID();
0 z- W) ~" Z; W  r            IGUIEnvironment* env = device->getGUIEnvironment();4 g. M9 H$ z8 k

9 k1 w' R2 x7 G1 B                                                                                    8 v# F: Y+ R' ~; N- X
应该改为    virtual bool OnEvent(const SEvent event)                    
: u2 ?9 n8 v- v  h                                                                                  , A  ?+ l) o6 Y+ c( r: S4 `
就能解决这个错误了~
6 {- k- q: w; o: t) a- ]* l7 }% Q
( h. P) b8 c$ O6 l- S错误二:
2 _: z* U) M, r* G; I! b( t  x8 r/ H' J+ V

! c5 |) L9 p- H$ /1 B3 T$ y  y
; J# D* L0 r% ~, Z5 P如果出现这个错误,将‘Irrlicht.dll’文件拷到当前工程的文件中。再编译链接一次,就ok了~

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值