SystemVerilog数组是按值或引用传递的吗?

维克多·柳博斯拉夫斯基(Victor Lyuboslavsky)

默认情况下,SystemVerilog是否按值或引用传递数组?

例如:

int array[5] = '{0,1,2,3,4};
some_function(array);  // <-- value or reference?
维克多·柳博斯拉夫斯基(Victor Lyuboslavsky)

默认情况下,SystemVerilog按值传递数组,复制整个数组。

出于性能原因,建议尽可能通过引用传递数组。

  • 如果要函数修改数组,请使用ref
  • 如果要让函数读取数组,请使用const ref

例子:

  function void pass_by_value(int array[5], int queue[$], int assoc[int]);
    // Default.
    // A copy of the arrays is made in this function
  endfunction

  function void pass_by_ref(ref int array[5], ref int queue[$],
                            ref int assoc[int]);
    // Original arrays are being referenced
  endfunction

  function void pass_by_const_ref(const ref int array[5],
                                  const ref int queue[$],
                                  const ref int assoc[int]);
    // Original arrays are being referenced
    // And they can be read but cannot be modified in this function 
  endfunction

EDA Playground上的示例:http : //www.edaplayground.com/x/2m9

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

SystemVerilog数组是按值或引用传递的吗?

来自分类Dev

C按值传递数组vs按引用传递数组

来自分类Dev

数组元素是否也按值或引用传递?

来自分类Dev

我应该按引用还是按值传递大型数组?

来自分类Dev

Python中的整数是按值或引用传递的吗?

来自分类Dev

协议数组元素是否按值或引用传递?

来自分类Dev

D关联数组-按值传递还是按引用传递?

来自分类Dev

按值或引用传递容器

来自分类Dev

分片是按值传递的吗?

来自分类Dev

按值传递调用数组

来自分类Dev

数组按引用设置/按值设置

来自分类Dev

在golang中按引用传递数组

来自分类Dev

Qt并发运行,按引用传递值,但是内存地址不同吗?

来自分类Dev

在C ++线程中,我应该按值或引用传递shared_ptr吗?

来自分类Dev

在C ++线程中,我应该按值或引用传递shared_ptr吗?

来自分类Dev

在Javascript中按值传递和按引用传递

来自分类常见问题

python pandas dataframe,是按值传递还是按引用传递

来自分类Dev

Objective-C是按值传递还是按引用传递?

来自分类Dev

C#按值传递与按引用传递

来自分类Dev

Python,Java,C:按引用传递或按值传递

来自分类Dev

c#对象按引用传递或按值传递

来自分类Dev

c#对象按引用传递或按值传递

来自分类Dev

哪个更快?按引用传递与按值传递C ++

来自分类Dev

在Android Adapter中按值传递和按引用传递?

来自分类Dev

C:何时按值返回或传递引用

来自分类Dev

C ++是否按值或引用传递对象?

来自分类Dev

汇编如何进行参数传递:按值,引用,不同类型/数组的指针?

来自分类Dev

汇编如何进行参数传递:按值,引用,不同类型/数组的指针?

来自分类Dev

Java按值传递还是引用传递?有人可以帮助我使用此代码吗?

Related 相关文章

  1. 1

    SystemVerilog数组是按值或引用传递的吗?

  2. 2

    C按值传递数组vs按引用传递数组

  3. 3

    数组元素是否也按值或引用传递?

  4. 4

    我应该按引用还是按值传递大型数组?

  5. 5

    Python中的整数是按值或引用传递的吗?

  6. 6

    协议数组元素是否按值或引用传递?

  7. 7

    D关联数组-按值传递还是按引用传递?

  8. 8

    按值或引用传递容器

  9. 9

    分片是按值传递的吗?

  10. 10

    按值传递调用数组

  11. 11

    数组按引用设置/按值设置

  12. 12

    在golang中按引用传递数组

  13. 13

    Qt并发运行,按引用传递值,但是内存地址不同吗?

  14. 14

    在C ++线程中,我应该按值或引用传递shared_ptr吗?

  15. 15

    在C ++线程中,我应该按值或引用传递shared_ptr吗?

  16. 16

    在Javascript中按值传递和按引用传递

  17. 17

    python pandas dataframe,是按值传递还是按引用传递

  18. 18

    Objective-C是按值传递还是按引用传递?

  19. 19

    C#按值传递与按引用传递

  20. 20

    Python,Java,C:按引用传递或按值传递

  21. 21

    c#对象按引用传递或按值传递

  22. 22

    c#对象按引用传递或按值传递

  23. 23

    哪个更快?按引用传递与按值传递C ++

  24. 24

    在Android Adapter中按值传递和按引用传递?

  25. 25

    C:何时按值返回或传递引用

  26. 26

    C ++是否按值或引用传递对象?

  27. 27

    汇编如何进行参数传递:按值,引用,不同类型/数组的指针?

  28. 28

    汇编如何进行参数传递:按值,引用,不同类型/数组的指针?

  29. 29

    Java按值传递还是引用传递?有人可以帮助我使用此代码吗?

热门标签

归档