小编BCS*_*BCS的帖子

C#中的静态构造函数/初始化程序的顺序

在使用C#应用程序时,我只是注意到在几个地方静态初始化程序彼此依赖,如下所示:

static private List<int> a = new List<int>() { 0 };
static private List<int> b = new List<int>() { a[0] };
Run Code Online (Sandbox Code Playgroud)

没有做任何有用的特殊工作.这只是运气吗?C#有解决这个问题的规则吗?

编辑:( re:Panos)在一个文件中,词汇顺序似乎是王道?跨文件怎么样?

看起来我尝试了这样的周期性依赖:

static private List<int> a = new List<int>() { b[0] };
static private List<int> b = new List<int>() { a[0] };
Run Code Online (Sandbox Code Playgroud)

并且该程序没有运行相同(测试套装全面失败,我没有看得更远).

c# dependencies static internals

20
推荐指数
2
解决办法
9069
查看次数

GUID是好密码吗?

优点:

  1. 我无论如何都记不起"好"的密码所以记住它们不是问题.
  2. 它们看起来不像密码
  3. 它们几乎无法猜测(128位熵)
  4. 容易生成(卸载"好的PRNG"问题)

缺点:

  1. ???

特别是; 对于某些设置上的数据库登录计算机输入的密码怎么办?

security guid

20
推荐指数
4
解决办法
6892
查看次数

如何组合URI

我有两个Uri对象传入一些代码,一个是目录,另一个是文件名(或相对路径)

var a = new Uri("file:///C:/Some/Dirs");
var b = new Uri("some.file");
Run Code Online (Sandbox Code Playgroud)

当我尝试将它们组合起来时:

var c = new Uri(a,b);
Run Code Online (Sandbox Code Playgroud)

我明白了

file:///C:/Some/some.file

我希望得到与之相同的效果Path.Combine(因为那是我需要替换的旧代码):

file:///C:/Some/Dirs/some.file

我想不出一个干净的解决方案.

丑陋的解决方案是/在Uri中添加一个,如果不存在的话

string s = a.OriginalString;
if(s[s.Length-1] != '/')
   a = new Uri(s + "/");
Run Code Online (Sandbox Code Playgroud)

.net uri

19
推荐指数
3
解决办法
2万
查看次数

Windows版本的GDB前端DDD

是否可以在某处下载本地(非cygwin)版本的DDD

windows user-interface gdb ddd-debugger

19
推荐指数
2
解决办法
4万
查看次数

测试浮点数是否为整数

这段代码有效(C#3)

double d;
if(d == (double)(int)d) ...;
Run Code Online (Sandbox Code Playgroud)
  1. 有一个更好的方法吗?
  2. 由于无关紧要的原因,我想避免双重演员; 除此之外还有什么好方法?(即使它们不那么好)

注意:有几个人指出(重要的)点= =经常有问题重新浮点数.在这种情况下,我期望值在0到几百的范围内,它们应该是整数(非整数是错误),所以如果这些点"不应该"对我来说是一个问题.

c# floating-point numerical

18
推荐指数
4
解决办法
1万
查看次数

如何使一种形式保持在另一种形式之上?

我找到了该Form.TopMost属性,但它将表单放在所有内容之上,包括不属于我的应用程序的内容.我怀疑我在这里遗漏了一些明显的东西.(Form非模态对话框的正确基类是什么?)

c# winforms

18
推荐指数
2
解决办法
2万
查看次数

Python生成器,将另一个可迭代组合成N组

我正在寻找一个可迭代i和大小的函数,n并产生长度n为连续值的元组i:

x = [1,2,3,4,5,6,7,8,9,0]
[z for z in TheFunc(x,3)]
Run Code Online (Sandbox Code Playgroud)

[(1,2,3),(4,5,6),(7,8,9),(0)]
Run Code Online (Sandbox Code Playgroud)

标准库中是否存在这样的功能?

如果它作为标准库的一部分存在,我似乎无法找到它并且我已经没有用于搜索的术语.我可以自己写,但我宁愿不写.

python generator std

18
推荐指数
2
解决办法
7457
查看次数

基于HTML5的节点图编辑器?

我正在寻找一个浏览器的click-n-drag类型编辑器来编辑定向标记图形.

我需要的只是一个小部件来支持编辑和提交(AJAX,表单,无论如何)生成的原始/标签/终止元组的能力.这不是我需要它,但简单的GraphViz案例的GUI编辑器几乎是理想的.这个UML小部件是沿着正确的轨道.

而且我受限于开源,免费软件和公共领域.

其他一些接近但不太明显的选择:

user-interface html5 graph

18
推荐指数
1
解决办法
1万
查看次数

VisualStudio的"SVN Blame"插件

我发现了这个问题,但引用的选项并未说明支持"责备".我正在寻找的是一种综合的方式来询问"谁在光标下编辑了最后一行?".

我知道大多数/所有SVN客户都会以某种形式给出这个但我想要的东西让我很容易就可以随心所欲地做到这一点:"哼哼,是谁写的?[点击水龙头]哦他."

svn plugins visual-studio

17
推荐指数
3
解决办法
6595
查看次数

在winforms下单击右键菜单

我想为我的winforms应用程序制作一个右键菜单.无论它弹出的地方,它都会有相同的两件事.一点点的狩猎和啄食让我得出的结论是,winforsm要么不以微不足道的方式支持它,要么将它隐藏在一些我还没猜到的名字之下.我想我可以让它与Click事件一起工作,并在正确的地方手动创建一个菜单,bla bla bla ...哎呀,我现在可以做一半dozon事情,我第一次出错了.有人必须有更好的方法.

我错过了一些简单的方法来添加它吗?

我可以复制/粘贴一些库/小部件来处理我的咕噜声工作吗?

controls menu winforms

17
推荐指数
1
解决办法
1万
查看次数