写的这个软件不是web,前端用的是QT写的,后端打算是用go来写,前端和后端通信使用的是TCP协议。
现在遇到的问题:
如下,要怎样才可以实现后端收到前端数据包后发现有字符串"ExecLogin",就能调用到func (this *LoginClass) ExecLogin(str string) 来执行操作呢?不止登陆,前端肯定还有各种各样的功能,要怎样才能弄成通用的方式,就是后端收到数据包能根据数据包中的字符串名来调用相应的执行函数。不知道泛型能不能实现
```
// login登陆类
type LoginClass struct{}
// 执行登陆操作
func (this *LoginClass) ExecLogin(str string) {
.....
}
```
建一个`map[string]func(data []byte)`
映射函数名称和函数。提前add到map中。
运行时函数名称应该只有反射能拿到吧。
#1
更多评论