SystemVerilog 中是否有连接字符串队列的函数?

Is there a function to concatenate a queue of strings in SystemVerilog?

一般来说,可以这样做:

string a;
a = {a, " first"};
a = {a, " second"};
a = {a, " third"};

据我了解,这意味着 a 每次都会为连接的字符串连续重新分配。是否有一个神奇的 join 函数可以像这样工作从而提高性能?

string a;
string a_q[$];
a_q = '{"first", "second", "third"};
a = a_q.join(); // a = {a_q} doesn't work as {a_q} returns another queue;

您可以使用比特流转换:(LRM 第 6.24.3 节比特流转换)

a = string'(a_q);