Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/271.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C 相同信息的不同类型定义_C_Java Native Interface - Fatal编程技术网

C 相同信息的不同类型定义

C 相同信息的不同类型定义,c,java-native-interface,C,Java Native Interface,我在编写一段代码时遇到了这样一个问题: typedef jobject jthread; typedef jobject jthreadGroup; 对于类似条目,不同类型定义的意义是什么?可能是为了确保代码清晰,他们用不同的名称键入了相同的类型 这里您可以同时使用jthread和jthreadGroup来代替jobject类型可能是为了提高代码的清晰度,它们用不同的名称键入了相同的类型 在这里,您可以使用jthread和jthreadGroup来代替jobject类型,它允许您为同一类型使用

我在编写一段代码时遇到了这样一个问题:

typedef jobject jthread;
typedef jobject jthreadGroup;

对于类似条目,不同类型定义的意义是什么?

可能是为了确保代码清晰,他们用不同的名称键入了相同的类型
这里您可以同时使用jthread和jthreadGroup来代替jobject类型

可能是为了提高代码的清晰度,它们用不同的名称键入了相同的类型
在这里,您可以使用jthread和jthreadGroup来代替jobject类型,它允许您为同一类型使用两个不同的名称。有(至少)两种不同的原因可以满足您的需求:

  • 在代码中,您希望读者看到我们正在处理的数据类型。毕竟,“线程”与“线程组”是不同的,即使表示它们的底层类型不同
  • 更改其中一种类型的类型而不影响另一种类型的能力。如果在以后的阶段,我们决定“jthreadGroup”最好是一个新类型,我们可以在不影响“jthread”的情况下更改它 假设我们有一个小游戏,我们以整数类型计算分数。我们还有很多玩家:

    typedef int ScoreCount;
    typedef int PlayerCount;
    
    后来,我们决定只需要一个小数字,
    short
    来计算玩家:

    typedef short PlayerCount;
    

    与使用“jobject”相同,只是一个不同的基本类型,这可能使它更容易理解。

    它允许您为同一类型使用两个不同的名称。有(至少)两种不同的原因可以满足您的需求:

  • 在代码中,您希望读者看到我们正在处理的数据类型。毕竟,“线程”与“线程组”是不同的,即使表示它们的底层类型不同
  • 更改其中一种类型的类型而不影响另一种类型的能力。如果在以后的阶段,我们决定“jthreadGroup”最好是一个新类型,我们可以在不影响“jthread”的情况下更改它 假设我们有一个小游戏,我们以整数类型计算分数。我们还有很多玩家:

    typedef int ScoreCount;
    typedef int PlayerCount;
    
    后来,我们决定只需要一个小数字,
    short
    来计算玩家:

    typedef short PlayerCount;
    

    与使用“jobject”相同的想法,只是一种不同的基本类型,这可能使它更容易理解。

    没有意义。有人想同时使用
    jthread
    jthreadGroup
    ,它们恰好是相同的类型。也许它们在其他系统上是不同的类型?没有意义。有人想同时使用
    jthread
    jthreadGroup
    ,它们恰好是相同的类型。也许它们在其他系统上是不同的类型?