← 2024 · 芯原 · 数字IC设计 笔试

推荐答案 测试一下

Which of the following descriptions about dynamic arrays and queues is incorrect?

A. Queue-related functions include pop_front() and push_back(). B. Dynamic arrays must require calling the delete function to free space. C. Queues will automatically allocate space when expanding. D. Dynamic arrays can be instantiated using new[].
单选题 中等 2024秋招笔试真题Online Assessment芯原单选题

参考答案

正确答案是B。选项B说“动态数组必须调用delete函数来释放空间”,这是不正确的。在SystemVerilog中,动态数组虽然可以使用delete()方法显式释放内存,但并非必须——当动态数组超出其作用域时,其分配的空间会自动被回收。因此“必须”一词过于绝对,导致该描述错误。选项A正确:队列(queue)确实提供了pop_front()和push_back()等内置方法,用于操作队列头部和尾部。选项C正确:队列是一种动态数据结构,在插入元素时如果容量不足,会自动分配更多空间,无需用户手动管理。选项D正确:动态数组可以通过new[size]操作符进行实例化,分配指定大小的连续存储空间。本题主要考察SystemVerilog中动态数组与队列在内存管理上的区别:两者都是动态分配,但队列完全自动管理,动态数组则支持手动delete,但也可以依赖自动回收。

涉及知识点

  • 动态数组内存管理
  • 队列内置方法
  • new[]与delete用法
  • 自动回收与手动释放区别
← 上一题
登录后反馈错题
下一题 →