From: Joost Y. D. <an...@wo...> - 2002-04-28 20:24:40
|
'Wouter Vermaelen' wrote about '[openMSX-devel] Re: [openMSX-commits] CVS: openMSX/src/sound MSXFmPac.cc,1.4,1.5 MSXFmPac.hh,1.2,1.3 Y8950.hh,1.15,1.16' - Sun, Apr 28, 2002 at 10:12:10PM CEST > > > On Sun, 28 Apr 2002, Bas Wijnen wrote: > > > +if (strncmp(reinterpret_cast <const char *>(PAC_Header), reinterpret_cast <const char *>(buffer), 16)==0) { > > What is "reinterpret_cast", I've never seen it before. What is the > difference with a 'normal' cast? normal casts are casts that always just work. In C++ there are a number of restricted casts that just do a subpart of that work: reinterpret_cast: will reinterpret to another type... this will for example not do pointer->int ... dynamic_cast: this does runtime type checking [e.g. for upcasting this is the best way to do it] const_cast: casts away a const. There're some more I think, don't have my C++ book here [it's at work, and I have holiday this week]. This allows to do finegrained casting and should be used as much as possible instead of the standard casts. Joost |