请选择 进入手机版 | 继续访问电脑版

唐康林NX二次开发论坛

 找回密码
 立即注册
查看: 2272|回复: 13

[技术分享] C#迭代器原理及NX二次开发使用迭代器方法!

[复制链接]

555

主题

743

帖子

3378

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
3378
发表于 2017-7-11 10:14:11 | 显示全部楼层 |阅读模式
我们先来看一下C#中,迭代器的原理,来一个例子。
  1. //C#迭代器原理
  2. int[] numbers = { 1, 2, 3, 4, 5, 6, 7};
  3. IEnumerator it1 = numbers.GetEnumerator();
  4. theSession.ListingWindow.Open();
  5. while (it1.MoveNext())
  6. {
  7.     theSession.ListingWindow.WriteLine(it1.Current.ToString());
  8. }
复制代码
上面这个例子意思:定义了一个整形数组,然后通过循环将它里面的值打印出来,用到的就是数组中的迭代器,但是这样去写代码,稍微麻烦了一点,所以C#里面有一个独有的东西,就是foreach
所以我们可以简化代码为下面这样:
  1. int[] numbers = { 1, 2, 3, 4, 5, 6, 7};
  2. theSession.ListingWindow.Open();
  3. foreach (var item in numbers)
  4. {
  5.     theSession.ListingWindow.WriteLine(item.ToString());
  6. }
复制代码
接下来问题来了,我们在NX二次开发的时候,我也是要不断的使用迭代器的,比如,我们想遍历出工作部件中,体的标识出来,
那在C#二次开发时,又如何使用这个迭代器呢?
我写了一个例子如下:
游客,如果您要查看本帖隐藏内容请回复




回复

使用道具 举报

6

主题

32

帖子

371

积分

终身VIP会员

Rank: 6Rank: 6

积分
371
发表于 2017-7-11 12:56:04 | 显示全部楼层
看看....
回复

使用道具 举报

6

主题

32

帖子

371

积分

终身VIP会员

Rank: 6Rank: 6

积分
371
发表于 2017-7-11 13:09:18 | 显示全部楼层
foreach 应用范围小. 运行效率不会比for高, 得看什么数据类型.  for直观通杀所有循环.
回复 支持 反对

使用道具 举报

0

主题

22

帖子

275

积分

终日乾乾

Rank: 3Rank: 3

积分
275
发表于 2017-7-13 14:16:10 | 显示全部楼层
看看怎么样!
回复 支持 反对

使用道具 举报

0

主题

3

帖子

19

积分

潜龙勿用

Rank: 1

积分
19
发表于 2017-7-15 08:23:12 | 显示全部楼层
学习学习
回复

使用道具 举报

0

主题

18

帖子

147

积分

终身VIP会员

Rank: 6Rank: 6

积分
147
发表于 2017-8-5 22:59:44 | 显示全部楼层
看看有没有惊喜
回复 支持 反对

使用道具 举报

0

主题

2

帖子

17

积分

潜龙勿用

Rank: 1

积分
17
发表于 2018-1-22 17:59:06 | 显示全部楼层
看看,学习一个,哈哈哈哈
回复 支持 反对

使用道具 举报

1

主题

33

帖子

630

积分

终身VIP会员

Rank: 6Rank: 6

积分
630
发表于 2018-3-19 13:04:23 | 显示全部楼层
谢谢分享
回复

使用道具 举报

0

主题

92

帖子

1061

积分

飞龙在天

Rank: 6Rank: 6

积分
1061
发表于 2018-3-19 16:43:23 | 显示全部楼层

谢谢分享
回复

使用道具 举报

0

主题

24

帖子

91

积分

见龙在田

Rank: 2

积分
91
发表于 2018-6-14 17:00:35 来自手机 | 显示全部楼层
好的东吴!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋| ( 蜀ICP备16014681号

GMT+8, 2018-10-17 08:31 , Processed in 0.091567 second(s), 24 queries .

Powered by www.nxopen.cn

© 2001-2013 nxopen.cn

快速回复 返回顶部 返回列表