Re: [go-nuts] ask for you help about cgo and interface

100 views
Skip to first unread message
Message has been deleted

Ian Lance Taylor

unread,
Dec 2, 2019, 1:41:36 PM12/2/19
to FAN DEAR, golang-nuts
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
Message has been deleted

Ian Lance Taylor

unread,
Dec 3, 2019, 10:28:47 AM12/3/19
to FAN DEAR, golang-nuts
On Tue, Dec 3, 2019 at 12:29 AM FAN DEAR <myd...@gmail.com> 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写道:
> --
> 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...@googlegroups.com.
> To view this discussion on the web visit https://groups.google.com/d/msgid/golang-nuts/10a1fea2-fe29-45c3-8261-f92b5baae3df%40googlegroups.com.
Message has been deleted

Ian Lance Taylor

unread,
Dec 4, 2019, 8:48:07 PM12/4/19
to FAN DEAR, golang-nuts
On Wed, Dec 4, 2019 at 5:21 PM FAN DEAR <myd...@gmail.com> wrote:
>
> 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:

When calling between C++ and Go, you need to call functions by name.
You can't use an interface.

Ian
Reply all
Reply to author
Forward
0 new messages