WSUserFunction (C 函数)

是一个 WSTP 类型,描述一个带有 void 返回类型以及 WSLINK 自变量的函数的函数指针.

更多信息

  • 函数 WSSetUserData()WSUserFunction 作为第二个自变量. WSTP 在 WSClose() 时自动调用 WSUserFunction.
  • WSTP 的标头文件 wstp.h 已对 WSUserFunction 作出声明.

范例

基本范例  (1)

#include <stdlib.h>
#include "wstp.h"

typedef struct foo_
{
    int member1;
} foo;


/* destroy a foo object retrieved from a link */
void c(WSTPINK lp)
{
    foo *fobj;

    fobj = WSTPUserData(lp, (WSTPUserFunction *)0);
    if(fobj == (foo *)0) return;

    free(foo);
}


/* allocate a foo object and store it in a link */

void f(WSLINK lp)
{
    foo *fobj;

    fobj = (foo *)malloc(sizeof(foo));
    if(fobj == (foo *)0)
        { /* error allocating space for foo object */ }

    WSSetUserData(lp, (void *)fobj, c);
}