Tag: C#的

什么是“基于参数的查询”(又名ADL或“Koenig Lookup”)?

什么是依赖于参数的查找的一些很好的解释? 许多人也称之为Koenig Lookup。 最好我想知道: 为什么这是件好事? 为什么这是一件坏事? 它是如何工作的? (注意:这意味着要成为Stack Overflow的C ++ FAQ的一个入口。)

使用.NET,如何根据文件签名而不是扩展名find文件的MIMEtypes

我正在寻找一个简单的方法来获得一个MIMEtypes的文件扩展名是不正确的或不给,类似于这个问题只有在。

什么是LD_PRELOAD技巧?

我最近在proggit上遇到了一个引用,并且(现在)没有解释。 我怀疑这可能是,但我不知道。

“使用”语句应该在命名空间的内部还是外部?

我一直在一些C#代码上运行StyleCop ,它一直在报告我的using语句应该在命名空间内。 将using语句放在命名空间之外而不是using技术原因?

如何正确设置,访问和释放C中的multidimensional array?

我已经看到了关于C中multidimensional array的问题“我的代码出了什么问题”的几十个问题。由于某些原因,人们似乎无法把头在这​​里发生的事情,所以我决定回答这个问题,作为对其他人的参考: 如何正确设置,访问和释放C中的multidimensional array? 如果别人有帮助的build议,请随时张贴!

如何避免在信号处理程序中使用printf?

由于printf不是可重入的,因此在信号处理程序中使用它不是安全的。 但是我已经看到很多使用printf的示例代码。 所以我的问题是:什么时候我们需要避免在信号处理程序中使用printf ,是否有推荐的replace?

通过Gmail SMTP服务器使用C#发送电子邮件

出于某种原因,接受的答案或其他任何工作对我来说都不是“ 通过Gmail发送.NET邮件 ”。 为什么他们不工作? 更新:我已经尝试了所有的答案(接受和否则)在另一个问题,但没有一个工作。 我只想知道它是否适用于其他人,否则Google可能会改变某些事情(之前已经发生过)。 当我尝试使用SmtpDeliveryMethod.Network的代码SmtpDeliveryMethod.Network ,我很快收到发送(消息)SmtpException。 消息是 SMTP服务器需要安全的连接或者客户端没有被authentication。 服务器的回应是: 5.5.1需要validation。 了解更多“< – 严重的是,它结束了。 更新: 这是我很久以前问过的一个问题,接受的答案是我在不同项目上多次使用过的代码。 我已经采取了这个职位和其他EmailSender项目的一些想法在Codeplex创build一个EmailSender项目 。 它专为可testing性而devise,支持我最喜欢的SMTP服务,如GoDaddy和Gmail。

如何检测文本文件的编码/代码页

在我们的应用程序中,我们接收来自不同来源的文本文件( .txt , .csv等)。 读取时,这些文件有时会包含垃圾,因为这些文件是在不同的/未知的代码页中创build的。 有没有办法(自动)检测文本文件的代码页? StreamReader构造函数中的detectEncodingFromByteOrderMarks适用于UTF8和其他unicode标记的文件,但是我正在寻找一种检测代码页的方法,例如ibm850 , ibm850 。 感谢您的回答,这就是我所做的。 我们收到的文件来自最终用户,他们没有关于代码页的线索。 接收者也是最终用户,到目前为止他们知道的关于代码页的问题:代码页存在,而且很烦人。 解: 在记事本中打开收到的文件,看一个乱码的文本。 如果有人被称为弗朗索瓦什么东西,用你的人类智慧,你可以猜测这个。 我创build了一个小应用程序,用户可以使用该应用程序打开文件,并在使用正确的代码页时input用户知道该文件将出现在文件中的文本。 循环遍历所有代码页,并显示用户提供的文本解决scheme。 如果popup更多的代码页,请让用户指定更多的文本。

助推精神:“语义行为是邪恶的”?

阅读并观看此演示文稿: http : //boost-spirit.com/home/2011/06/12/ast-construction-with-the-universal-tree/ 我发现了这个说法 – 基本上我们build议不要使用语义动作。 我必须承认,我已经有这样的感觉:具有语义行为的语法实际上看起来有点丑陋。 而当我需要扩展/改变它们的时候,它恰恰在语义上采取了很多“微观pipe理”。 在演示中演示的具有属性语法的方法似乎更加优雅和有前途。 所以我想问一下:这是一个“官方”的观点吗? 我应该学习如何使用属性语法,并更详细地避免语义操作? 如果是这样,我想要求一些基本的(甚至可能是微不足道的)例子,说明这种方法–LISP解释器对我来说太复杂了。

为什么整数除法在C#中返回一个整数,而不是一个浮点数?

有谁知道为什么在C#中的整数除法返回一个整数,但不是浮动? 背后有什么想法(它只是C / C ++的遗产)? 在C#中: float x = 13 / 4; //imagine I used have overridden == operator here to use epsilon compare if (x == 3.0) print 'Hello world'; 这个代码的结果是: 'Hello world' 严格地说,不存在整数除法(按定义划分是产生有理数的运算,整数是其中非常小的一个子集)。