侵入式接口:需要显式地创建一个类去实现一个接口。
非侵入式接口:不需要显式地创建一个类去实现一个接口。
C++侵入式接口:
#include <iostream> enum SEX { MAIL, FEMAIL }; class PeopleInterface { public:
PeopleInterface(){}; virtual ~PeopleInterface(){}; virtual int getSex() = 0; };
class Man : public PeopleInterface { public: Man(){}; ~Man(){}; int getSex()
{return MAIL;} }; int main(int argc, char const *argv[]) { Man m;
std::cout<<"sex:"<<m.getSex()<<std::endl; return 0; }
go非侵入式接口
package main import "fmt" type People interface { getSex() } type Man struct {
} func (m Man) getSex() int { return 0 } func main() { var m Man fmt.Println(
"sex:", m.getSex()) }
想实现一个接口,直接实现接口包含的方法就可以了,不用太操心哪个方法属于哪个接口。
技术
今日推荐