cvt1.c
来自「this is a gcc file, you can download it 」· C语言 代码 · 共 45 行
C
45 行
// Build don't link: // GROUPS passed conversions#include <iostream>class Thing{public: typedef enum { GOOD_THING, BAD_THING, } ThingType ; // ERROR - comma Thing (ThingType type) : thingType (type) { } ~Thing () { }private: ThingType thingType ;} ;class Group{public: typedef enum { THIS_GROUP, THAT_GROUP, } GroupType ; // ERROR - comma Group (GroupType type) : groupType (type), groupCount (0) { } ~Group () { } void append (Thing* const &entry) { groupCount ++ ; } operator GroupType () const { return groupType ; } operator int () const { return groupCount ; } // remove this and problem goneprivate: int groupCount ; GroupType groupType ;} ;inline Group& operator += (Group& g, Thing* const t){ g.append (t) ; return g ; // complaint is here}intmain (int argc, char** argv){ Group g (Group::THIS_GROUP) ; g += new Thing (Thing::GOOD_THING) ; std::cout << "Group type is " << (Group::GroupType) g << std::endl ; return 0 ;}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?