问题列表 - 第815页

为什么,您更喜欢例外或返回代码?

我的问题是大多数开发人员更喜欢错误处理,异常或错误返回代码.请具体说明语言(或语言家族)以及为什么您喜欢其中一种语言.

我出于好奇而问这个问题.我个人更喜欢错误返回代码,因为它们不那么具有爆炸性,并且如果不想要,也不会强制用户代码支付异常性能损失.

更新:感谢所有答案!我必须说,虽然我不喜欢代码流与异常的不可预测性.关于返回代码(以及他们的哥哥句柄)的答案会给代码添加大量的噪音.

language-agnostic exception

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

为什么C#和VB有泛型?他们提供了什么好处?泛型,FTW

来自维基百科:

通用编程是一种计算机编程风格,其中算法是根据待指定的后续类型编写的,然后在需要时作为参数提供的特定类型实例化,并由1983年出现的Ada开创.这种方法允许编写常用功能或类型,仅在使用时操作的类型集不同,从而减少重复.

泛型提供了定义稍后指定的类型的能力.您不必将项目转换为类型以使用它们,因为它们已经被键入.

为什么C#和VB有泛型?他们提供了什么好处?使用它们有什么好处?

还有哪些语言也有仿制药?

.net c# vb.net generics

6
推荐指数
2
解决办法
1968
查看次数

在实践中私人与公共成员(封装有多重要?)

面向对象编程的最大优点之一是封装,我们(或者至少,我已经)教过的"真理"之一是成员应该始终保持私密并通过访问者和变异器提供方法,从而确保验证和验证更改的能力.

不过,我很好奇,这在实践中有多重要.特别是,如果你有一个更复杂的成员(例如集合),那么将它公开而不是制作一堆方法来获取集合的密钥,添加/删除集合中的项目是非常诱人的,等等

你一般遵守规则吗?你的答案是否会改变,取决于它是为自己编写的代码还是其他人使用的代码?这种混淆是否有更微妙的原因?

language-agnostic encapsulation

22
推荐指数
3
解决办法
3359
查看次数

IsAssignableFrom和GetInterface有什么区别?

在.Net中使用反射,有什么区别:

   if (foo.IsAssignableFrom(typeof(IBar)))
Run Code Online (Sandbox Code Playgroud)

   if (foo.GetInterface(typeof(IBar).FullName) != null)
Run Code Online (Sandbox Code Playgroud)

哪个更合适,为什么?

什么时候一个或另一个失败?

.net c# reflection

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

什么是托管Subversion的一些体面的ISP

我想在一个安装了Subversion的ISP上推荐,这样我就可以启动一个存储库.到目前为止,我发现discount.asp在他们的服务器上没有这个并且不支持它.所以我正在寻找推荐

svn

8
推荐指数
2
解决办法
1650
查看次数

如何在Solaris 10中获取"命令缓冲区"?

在linx CShell上工作时,您可以选择按向上/向下箭头选择最后输入的命令或命令缓冲区.这甚至适用于Windows.

但是,在我最近切换到的Solaris上工作时,这不起作用.我猜测shell也是一个CShell.

请告诉我在Solaris上使用此功能需要哪些组合键?

solaris

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

如何创建subversion存储库的目录列表

我有一个客户端要求我给他们一个源代码中的每个文件和文件夹的列表(然后是源代码树的简要说明).有没有一种简单的方法可以从subversion存储库创建这种格式正确的列表?

svn

5
推荐指数
1
解决办法
2917
查看次数

我应该使用什么JavaScript存储库?

许多语言都有标准存储库,人们可以在这些存储库中捐赠他们希望其他人可以访问的有用库.例如Perl有CPAN,PHP有PEAR,Ruby有RubyGems,等等.JavaScript的最佳选择是什么?

我问,因为几个月前我将Perl的Statistics :: Distributions移植到JavaScript.(当我说我移植的意思是,"冉文本替换,用手固定的几件事情."我并没有把它改写.)因为我用这个模块一些在Perl次了,我觉得统计的distributions.js可能对某人有用.所以我把它放在与原版(您选择的GPL或艺术许可证)相同的开源许可证下.但是我不知道在哪里放置它以便可能想要它的人可能会找到它.

它不适合任何类型的框架.它只是一个独立的库,使您能够计算出5位精度的有用统计分布.在JavaScript中.

javascript open-source

7
推荐指数
2
解决办法
3467
查看次数

将代理添加到关键字new的事件是否安全?

我关心的一件事是我发现了两种向事件注册委托的方法.

  1. OnStuff + = this.Handle;
  2. OnStuff + = new StuffEventHandler(this.Handle);

第一个是干净的,做"OnStuff - = this.Handle"是有道理的.从事件中取消注册......但是对于后一种情况,我应该做"OnStuff - = new StuffEventHandler(this.Handle);"?感觉就像我没有删除任何东西,因为我正在抛出另一个StuffEventHandler引用.事件是否通过引用比较委托?我担心我可以在这里开始讨厌的内存池.抓住我?我没有引用我之前注册的"new StuffEventHandler".

做#1的缺点是什么?

做#2有什么好处?

.net c# events delegates

6
推荐指数
2
解决办法
597
查看次数

何时使用Binary Space Partitioning,Quadtree,Octree?

我最近了解了二进制空间分区树及其在三维图形和碰撞检测中的应用.我还简要地阅读了与四叉树和八叉树相关的材料.你什么时候在bsp树上使用四叉树,反之亦然?它们可以互换吗?如果我有足够的信息来填写这样的表格,我会感到满意:

            | BSP | Quadtree | Octree
------------+----------------+-------
Situation A |  X  |          |
Situation B |     |     X    |
Situation C |     |          |   X
Run Code Online (Sandbox Code Playgroud)

什么是A,B和C?

3d tree quadtree octree space-partitioning

68
推荐指数
3
解决办法
4万
查看次数