Tag: C#的

如何以编程方式将客户端连接到WCF服务?

我试图将应用程序(客户端)连接到公开的WCF服务,但不是通过应用程序configuration文件,而是在代码中。 我应该怎么做呢?

我如何获得两个数组之间的交集作为一个新的数组?

在各种情况下,我多次遇到这个问题。 尽pipe我对C或Java感到满意,但它对所有的编程语言都是通用的。 让我们考虑两个数组(或集合): char[] A = {'a', 'b', 'c', 'd'}; char[] B = {'c', 'd', 'e', 'f'}; 我如何获得两个数组之间的公共元素作为一个新的数组? 在这种情况下,数组A和B的交集是char[] c = {'c', 'd'} 。 我想要避免在另一个数组内重复迭代一个数组,这将会增加执行时间(长度是B的A倍长度),这对于巨大的数组来说太多了。 有没有什么办法可以在每个数组中进行一次传递以获得通用元素?

我应该使用双或浮动?

在C ++中使用一个而不是另一个的优点和缺点是什么?

是否有可能告诉分支预测器跟随分支的可能性?

为了说清楚,我不打算在这里进行任何移植,所以任何将我绑定到某个盒子的解决scheme都是可以的。 基本上,我有一个if语句,将99%的时间评估为真,并试图排除性能的每一个时钟,我可以发出某种编译器命令(使用GCC 4.1.2和x86 ISA,如果它很重要)告诉分支预测器,它应该caching该分支?

我怎样才能传播线程之间的exception?

我们有一个单线程调用的函数(我们将其命名为主线程)。 在函数体内,我们产生了多个工作线程来完成CPU密集型工作,等待所有线程完成,然后在主线程上返回结果。 结果是调用者可以天真地使用这个函数,并且在内部它将使用多个核心。 迄今为止都很好.. 我们面临的问题是处理例外。 我们不希望工作线程上的exception使应用程序崩溃。 我们希望调用者的函数能够在主线程上捕获它们。 我们必须在工作线程上捕获exception,并将它们传播到主线程,让它们从这里继续展开。 我们怎么做到这一点? 我能想到的最好的是: 在我们的工作线程(std :: exception和我们自己的几个)上捕获各种exception。 loggingexception的types和消息。 在主线程上有一个相应的switch语句,它重新引发工作线程上logging的任何types的exception。 这具有明显的缺点,即只支持一组有限的exceptiontypes,并且每当添加新的exceptiontypes时都需要修改。

任何理由超载全球新和删除?

除非你编程操作系统或embedded式系统的一部分,否则有什么理由这样做? 我可以想象,对于经常被创build和销毁的某些特定的类来说,重载内存pipe理函数或者引入一个对象池可能会降低开销,但是在全局上做这些事情呢? 加成 我刚刚发现一个重载删除函数的错误 – 内存并不总是被释放。 这是一个不太重要的内存关键应用程序。 而且,禁用这些过载只会使性能降低0.5%左右。

在C#中辨别联盟

[注意:这个问题的原始标题是“ C(ish)风格的联合在C# ”,但杰夫的评论告诉我,显然这种结构被称为“歧视联盟”] 请原谅这个问题的冗长。 在我们已经有了一些类似的问题,但他们似乎集中在工会的记忆储蓄的好处或使用它的互操作性。 这是一个这样的问题的例子 。 我希望有一个工会types的东西有些不同。 我正在编写一些代码,生成看起来有点像这样的对象 public class ValueWrapper { public DateTime ValueCreationDate; // … other meta data about the value public object ValueA; public object ValueB; } 相当复杂的东西,我认为你会同意。 问题是, ValueA只能是一些特定的types(比如string , int和Foo (这是一个类),而ValueB可以是另一个小的types集合),我不喜欢把这些值当作对象(我想编码的温暖舒适的感觉与一些types的安全)。 所以我想写一个简单的小包装类来expression一个事实,即ValueA在逻辑上是对特定types的引用。 我打电话给class级Union因为我想要实现的是联盟概念。 public class Union<A, B, C> { private readonly Type type; public readonly A a; public readonly […]

将类代码分离为头文件和cpp文件

我很困惑如何将一个简单类的实现和声明代码分离成一个新的头文件和cpp文件。 例如,我将如何分隔以下类的代码? class A2DD { private: int gx; int gy; public: A2DD(int x,int y) { gx = x; gy = y; } int getSum() { return gx + gy; } };

generics中的<out T> vs <T>

<out T>和<T>什么区别? 例如: public interface IExample<out T> { … } 与 public interface IExample<T> { … } 我从MSDN得到的唯一信息是 您可以在generics接口和委托中使用out关键字。

.net中ObservableCollection的用法是什么?

.net中ObservableCollection的用法是什么?