我有一个字节数组,它被定义为指针+大小:
size_t size; // size in bytes
void *data; // NOT zero-terminated string
如何从中构建,最好是零拷贝,'string'?
答案 0 :(得分:5)
这假设data
指向不可变的内存:
string s = (cast(immutable(char)*)data)[0..size];
如果没有,则char[]
更合适而不是字符串,或者您可以使用.idup
制作不可变副本。