使用反射创建空数组

本文关键字:数组 创建 反射 | 更新日期: 2023-09-27 18:29:29

如何创建由反射给定类型的空数组?我尝试过使用Activator.CreateInstance(Type)方法:

Type arrayType = typeof(string[]);
Activator.CreateInstance(arrayType);

但我得到了一个MissingMethodException例外:

System.MissingMethodException: No parameterless constructor defined for this object.

我做错了什么?

使用反射创建空数组

有些类型你必须陷阱和处理特殊的,对于你的情况,你会使用:

if ( type.IsArray){
  var o = Array.CreateInstance(type, size);
}