草庐IT

Multiple-ZK-clusters-or-a-single-

全部标签

c# - 扑克牌 : Should they be enum or struct or class?

我正在设计许多(希望是数千)玩家可以同时玩某些纸牌游戏的游戏网站。这副牌是标准的52张牌。每张牌都有花色和等级。牌将一直被洗牌、发牌、挑选、排序、打出。我的问题是,Card应该是枚举、结构还是类?对于枚举:设每张卡片为一个字节0..51。所以一张卡会占用很少的空间。您可以将一只watch示为8个字节的位集。您可以在需要时非常快速地计算给定卡片的花色和点数:即花色(n)=n/13。这将非常有效。如果需要为Cards写方法,就通过扩展方法来写。对于结构:不,这就像编写机器代码。卡是一种简单的结构,保存的数据很少,不可变,很小。它没有太多行为,因此将其设为结构并将其视为被动数据结构。当需要时

c# - 什么更快 : expression trees or manually emitting IL

创建直接发出IL的方法与构建表达式树之间是否存在性能差异? 最佳答案 优秀而复杂的问题。最近之前,Expression根本无法处理所有情况-因此在许多情况下这是毫无疑问的。这随着Expression.Block等的引入而改变。在大多数“常见”情况下,Expression的使用可能绰绰有余,但我承认我没有精确的测量,仅仅是因为虽然我做了很多IL,但我还针对没有像Expression(当然不是Expression.Block)这样的奢侈品的下层框架。我也倾向于使用复杂的“装饰器”方法,这些方法可以很好地在IL中堆叠体操,但不一定进入Ex

c# - Youtube 数据 API : Retrieving multiple Video entries by IDs in a single request

我想知道是否有办法在YouTube上查询多个随机单个查询中的视频(视频ID已知)?我将视频ID存储在本地数据库中,需要显示多个网页中的详细信息(带有拇指、评分、作者姓名等的列表)。我正在查看Youtube数据API,发现我可以像这样的实体数据:UrivideoEntryUrl=newUri("http://gdata.youtube.com/feeds/api/videos/video_id");Videovideo=request.Retrieve(videoEntryUrl);在循环中重复这个似乎是个坏主意,因为配额。还有“批处理”可用——http://code.google.co

c# - 我得到 "missing a using directive or assembly reference"并且不知道出了什么问题

我正在尝试允许用户将数据输入到将添加到web.config文件的文本框中。我已将相关行添加到web.config文件中,但是当我创建此类时,一切都出错了。每当我尝试运行我的应用程序时,我总是收到“您是否缺少using指令或程序集引用错误”。我看过其他时候有人问过这个问题,但似乎无法弄清楚我哪里出错了。问题是我对VisualStudio非常陌生,对可能的答案一无所知。下面是产生错误的类文件。我希望我已经包括了你需要帮助我的一切。谢谢。usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Configuration;nam

c# - "StandardOut has not been redirected or the process hasn' t started yet”在 C# 中读取控制台命令输出时

感谢@user2526830提供的代码。基于该代码,我在程序中添加了几行,因为我想读取SSH命令的输出。下面是我的代码,它在while行出错StandardOuthasnotbeenredirectedortheprocesshasn'tstartedyet.我想要实现的是,我想将ls的输出读入一个字符串。ProcessStartInfostartinfo=newProcessStartInfo();startinfo.FileName=@"f:\plink.exe";startinfo.Arguments="-sshabc@x.x.x.x-pwabc123";Processproce

c# - 将字符串数组连接到 "string1, string2 or string3"

考虑以下代码:string[]s=new[]{"Rob","Jane","Freddy"};stringjoined=string.Join(",",s);//joinedequals"Rob,Jane,Freddy"出于UI原因,我可能希望显示字符串"Rob,JaneorFreddy"。关于最简洁的方法有什么建议吗?编辑我正在寻找简洁易打的东西。由于我只连接少量( 最佳答案 输入的简明意思?还是跑?运行速度最快的将使用StringBuilder进行手摇。但要输入,可能(编辑处理0/1等):stringjoined;switch(s

c# - 枚举器实现 : Use struct or class?

我注意到List将其枚举器定义为struct,而ArrayList将其枚举器定义为class.有什么不同?如果我要为我的类(class)写一个枚举器,哪个更好?编辑:使用yield无法满足我的要求,所以我正在实现自己的枚举器。也就是说,我想知道遵循List的路线是否会更好。并将其作为结构实现。 最佳答案 像其他人一样,我会选择一个类(class)。可变结构是讨厌的。(正如Jared所建议的那样,我会使用迭代器block。手动编写枚举器代码很费力才能正确。)参见thisthread例如,列表枚举器是一个导致问题的可变结构......

c# - 检查 single() LINQ 是否返回 NULL

我有一个LINQ查询,它应该返回单个结果或不返回结果。我调用Single()得到这样的结果:varpropertyDataSource=(fromxinmyCollectionwhereSomeCondition(x)selectx).Single();当我的查询只有一个结果时,这可以正常工作,但如果没有结果,它会抛出System.InvalidOperationException消息Sequencecontainsnoelements。p>我该如何解决这个问题? 最佳答案 使用SingleOrDefault相反。Single当枚举

c# - Linq 查询 'and' 'or' 运算符

我已经用“or”条件和“and”编写了一个LINQ查询,但效果不佳。fromxindb.fotoes.Where(x=>x.uid==NewsId&&x.ukat=='fukat1'||x.ukat=='fukat2')我不明白为什么它不起作用,有人可以帮我解决这个问题吗? 最佳答案 就这样试试吧,你需要用括号来对你的条件进行分组:fromxindb.fotoes.Where(x=>x.uid==NewsId&&(x.ukat=='fukat1'||x.ukat=='fukat2'))

c# - 从 Single 到 Decimal 的显式转换导致不同的位表示

如果我将singles转换为decimald我注意到它的位表示与直接创建的小数。例如:Singles=0.01f;Decimald=0.01m;int[]bitsSingle=Decimal.GetBits((decimal)s)int[]bitsDecimal=Decimal.GetBits(d)返回(为简洁起见删除了中间元素):bitsSingle:[0]=10[3]=196608bitsDecimal:[0]=1[3]=131072这两个都是十进制数,都(看起来)准确地表示0.01:查看规范没有任何亮点,除了可能:§4.1.7Contrarytothefloatanddouble