First of all, thank you very much for your reply. Actually, what I want to do is to use golang to complete the TCP communication SDK. When C++ calls golang to send a message, I need to tell the C++ message sending status at the appropriate time, such as sending failed, sending successfully, and the reply received. Here are some code snippets:
package test3 import "C" func main() { } //export IRequestListener type IRequestListener interface { OnSendSuccess() OnSendFailure(err error) OnResponse(msg string) } //export GetCard func GetCard(uid string, listener IRequestListener) { disposeRequest(&request{ message: uid, }, func(req *request) { listener.OnSendSuccess() }, func(req *request, err error) { listener.OnSendFailure(err) }, func(resp *response) { listener.OnResponse(resp.string()) }) } Can you give me a sample code? thank you very much! 在 2019年12月3日星期二 UTC+8下午11:28:47,Ian Lance Taylor写道: > > On Tue, Dec 3, 2019 at 12:29 AM FAN DEAR <myd...@gmail.com <javascript:>> > wrote: > > > > typedef struct { void *t; void *v; } GoInterface; > > > > > > What is *t and *v? > > See https://research.swtch.com/interfaces. > > Ian > > > > 在 2019年12月3日星期二 UTC+8上午2:41:36,Ian Lance Taylor写道: > >> > >> On Mon, Dec 2, 2019 at 9:57 AM FAN DEAR <myd...@gmail.com> wrote: > >> > > >> > > >> > How to use add2 function, i am very troubled. > >> > >> On this mailing list please post code as ordinary text, or as a link > >> to the Go playground. Don't post colorized images with a black > >> background. Thanks. > >> > >> You can't declare a Go interface type in C. C doesn't have interface > >> types. The only way to use an exported Go function that takes an > >> argument of interface type is for a Go function to call a C function > >> with an interface value and for that C function to then call a Go > >> function. > >> > >> What are you really trying to do? > >> > >> Ian > > > > -- > > You received this message because you are subscribed to the Google > Groups "golang-nuts" group. > > To unsubscribe from this group and stop receiving emails from it, send > an email to golan...@googlegroups.com <javascript:>. > > To view this discussion on the web visit > https://groups.google.com/d/msgid/golang-nuts/10a1fea2-fe29-45c3-8261-f92b5baae3df%40googlegroups.com. > > > -- You received this message because you are subscribed to the Google Groups "golang-nuts" group. To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/golang-nuts/db6734f7-aecf-47e0-8e1d-4e0227d7b74b%40googlegroups.com.