永发信息网

C#和IDL二次开发的时候,我想传递一个简单的一维数组,但结果总是不是我想要的,关键代码如下:

答案:2  悬赏:70  手机版
解决时间 2021-03-07 16:47
  • 提问者网友:書生途
  • 2021-03-06 18:04
string[] inputfiles = new string[2]{ "abc", "def" }; string IdlCommand = "layer_stacking,'" + inputfiles + "','" + outputfile + "'"; pCOM_IDL.ExecuteString(IdlCommand); IDL代码就一句话: tmp=dialog_message(string(inputfiles),/infor) 就是把inputfiles传递给IDL再显示一下,我得到的结果总是“system.string[]”,而不是我想要的abc def,请问这是为什么?怎么解决?谢谢!
最佳答案
  • 五星知识达人网友:洒脱疯子
  • 2021-03-06 19:24
数组在C#不能直接用+号连接,你可以考虑一下将数组拼接一下,也就是
string IdlCommand = "layer_stacking,'" + inputfiles + "','" + String.Join(",",inputfiles)+ "'";
全部回答
  • 1楼网友:妄饮晩冬酒
  • 2021-03-06 20:41
这样看你是否明白: 首先要有一个叫user的类,定义三个属性,分别是account,name,password以记录帐户,姓名,密码资料: class user { public string account {get;set;} public string name {get;set;} public string password {get;set;} } class program { static void main() { //定义有三个元素的数组,这样第一个元素就是一个user对象: user[] usergroup=new user[2]; //访问元素需要加中括号以及元素编号 usergroup[0]=new user();//这样就实例化第一个数组元素。 usergroup[0].account="1241414141412";//给第一个元素的account属性赋值为1241414141412 .........//其他的意思就一样了。 foreach(user u in usergroup) { } } }
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯