我需要Type变量中给出的n个元素的数组类型.我正在解决这个问题:
Type foo;
int n;
Type newType=(Array.CreateInstance(foo,n)).GetType();
Run Code Online (Sandbox Code Playgroud)
这有效,但它确实意味着我实际上创建一个未使用的数组只是为了得到它的类型.我相信一定有更好的方法!
我正在尝试使用 VS2019 为 linux 开发 C 代码。
我发现虽然可以找到许多 Linux 标头,例如 sys/types.h 和 sched.h,但找不到其他标头,例如 sys/syscall.h 和 fcntl.h。
我可以看到它在本地 linux 平台目录中有许多头文件的本地副本,例如 stdint.h ......我可以从目标机器上剪切并粘贴缺少的那些吗?
我宁愿怀疑如果 unistd.h 之类的常见头文件丢失是有原因的,我不想把事情搞砸!
使用 wxSmith,我有一个包含许多按钮的对话框,这些按钮需要相同的事件处理程序,但当然会作用于它们自己的数据实例。
以前使用 C++ 构建器时,我会在小部件的标签字段中放置一个标识符字符串。然后,我将有一个函数来迭代所有小部件,并使用字符串作为构造函数来创建自定义对象,并将指向该对象的指针放置在标记字段中。
这样,通用事件处理程序可以简单地转换标签字段来获取知道如何处理事件的自定义特定实例。
其他 GUI API,例如 Visual Basic,更简单,但允许控件数组或索引,并且通过引用索引来调用事件,因此此类事情仍然可以使用数组完成。
到目前为止,我可以看到将附加信息与 wxWidget 关联起来的唯一方法是将其继承到我自己的自定义控件中,但我担心这会破坏与 wxSmith 的兼容性。
有人知道一种优雅的方法吗?