自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(4)
  • 收藏
  • 关注

原创 C# Pattern Matching (is vs switch)

可以加上vechicle字段或者属性作为判断条件的一部分,比如我假设Car类在乘客大于5的时候才会收费: Car {Passengers:>=5} c => 2.00m,分别对Xnullable和yBoxed进行判断,结果为真之后赋值给Local Variable a和b。C#中可以通过 is 或者 switch 匹配各种各样的Pattern。run-time type 是nullable T。Caculator 类。

2023-06-12 10:42:29 212

原创 C# yeild 语法糖

迭代器不只是一种遍历集合的方式(这只是最简单的用例之一),相反迭代器是返回序列的一种方式。这个序列甚至可能是无限的,或者单次的operation的cost很巨大比如load item,process。比如返回质数的list,我们没有办法返回一个无限长度的列表并使用前100个项。返回一个集合与返回一个即迭代是完全不同的概念。可以看到Helper每次只处理一条鱼,就会交给Cheif进行处理,而不是把5条鱼都处理完了之后,一块返回做处理。我们可以给每条鱼的处理加上2s的处理时间,使用。

2023-06-08 16:45:05 119

原创 istream_iterators VS ostream_iterators的区别

in返回的是一个右值,即我们无法通过istream_iterators对输入流本身进行修改。out返回的是一个左值,即我们可以写入到ostream中去。

2023-06-04 12:10:57 44 1

原创 istream_iterator 不可重用

可以看出在初始化的时候,in1指向文件流的首元素,in2指向了第二个元素,当我们再次使用in1去输出整个文件流的时候,跳过了in2所指的元素,输出了 1,3,4,5。且in1和in2是相等的,因为他们指向了同一个文件流。在第一次遍历完成之后,in1被自动充值为文件流对象的首元素位置,但是此时如果再使用它进行遍历,就会发现它并不能展示其他元素,而是只能打印出一个首元素1.先看一个正常使用的例子: (2.txt里面保存了一个数组{1,2,3,4,5},使用输入流把数字依次输出)

2023-06-04 11:29:05 46 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除