gpt4 book ai didi

java - 如何在 C 中实现注解?

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:30:47 24 4
gpt4 key购买 nike

我看到 JNI 使用了这些函数,但我不知道它是什么:

JNIEXPORT void JNICALL Java_ClassName_MethodName
(JNIEnv *env, jobject obj)
{
/*Implement Native Method Here*/
}

就c语言特性而言,“JNIEXPORT”和“JNICALL”是什么?

是否可以创建这样的注释:

ROUTE("/test/whatever") 
void function(int x)
{
}

并使其有效 C?我需要能够以某种方式在运行时将这些注释与相应的函数相关联。有任何方法吗?我知道可以在运行时从 ELF 文件中读出函数指针,所以这部分就完成了。现在我只需要一些方法来注释函数。我不在乎实现有多难看,它只需要在 Linux 上运行。

最佳答案

JNIEXPORT 是一个宏,其计算结果类似于 __declspec(dllexport),具体取决于您的编译器/平台。 JNICALL 计算调用约定,即 __stdcall 或适合您的编译器/平台的任何内容。

至于问题的第二部分,C 中没有运行时反射功能,因此没有注释。

关于java - 如何在 C 中实现注解?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10513387/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com