Tag: C#的

为什么不应该从c ++ std string类派生?

我想问一下有效的C ++中的一个特定的问题。 它说: 如果一个类需要像一个多态类一样行为,那么析构函数应该是虚拟的。 它进一步补充说,由于std::string没有虚拟析构函数,所以不应该从它派生出来。 另外std::string甚至没有被devise成基类,忘记了多态基类。 我不明白在一个类中需要什么具体的基础类(不是多态的)? 是不是从std::string类派生的唯一原因是它没有虚拟析构函数? 为了可重用性,可以定义一个基类,并且多个派生类可以inheritance它。 那么是什么让std::string甚至没有资格作为基类? 另外,如果有一个纯粹定义为可重用目的的基类,并且有许多派生types,是否有任何方法来阻止客户端执行Base* p = new Derived()因为这些类不意味着被多态使用?

使用malloc分配不同行长度的multidimensional array

我有以下的C代码: int *a; size_t size = 2000*sizeof(int); a = (int *) malloc(size); 这工作正常。 但是,如果我有以下几点: char **b = malloc(2000*sizeof *b); b每个元素都有不同的长度。 如何为b做同样的事情,就像我为b做的一样; 即下面的代码将保持正确? char *c; size_t size = 2000*sizeof(char *); c = (char *) malloc(size);

如何以编程方式确定特定进程是32位还是64位

我的C#应用​​程序如何检查某个特定的应用程序/进程(注意:不是当前进程)是以32位还是64位模式运行? 例如,我可能想要通过名称查询特定的进程,即“abc.exe”或基于进程ID号。

Linux中的itoa函数在哪里?

itoa()是一个非常方便的函数,将数字转换为string。 Linux似乎没有itoa() ,有没有一个等价的函数,或者我必须使用sprintf(str, "%d", num) ?

DataTables在C#中的内部连接

让T1和T2是以下字段的数据表 T1(CustID, ColX, ColY) T2(CustID, ColZ) 我需要联合表 TJ (CustID, ColX, ColY, ColZ) 如何以简单的方式在C#代码中完成这项工作? 谢谢。

如何使用WPF和.NET 3.5注册一个全局热键来说CTRL + SHIFT +(LETTER)?

我使用WPF在C#中构build应用程序。 我怎样才能绑定到一些键? 另外,我怎样才能绑定到Windows键 ?

C#中的exception有多昂贵?

C#中的exception有多昂贵? 只要堆栈不深,似乎并不是非常昂贵; 但是我读到了相互矛盾的报道。 有没有被反驳的确切的报告?

生成一个Xml序列化程序集作为我的构build的一部分

这段代码产生一个FileNotFoundException,但最终运行没有问题: void ReadXml() { XmlSerializer serializer = new XmlSerializer(typeof(MyClass)); //… } 这是一个例外: 在mscorlib.dll中发生第一次机会exceptiontypes“System.IO.FileNotFoundException” 其他信息:无法加载文件或程序集“MyAssembly.XmlSerializers,Version = 1.4.3190.15950,Culture = neutral,PublicKeyToken = null”或其依赖项之一。 该系统找不到指定的文件。 看来如果没有find框架,框架会自动生成序列化程序集。 我可以使用sgen.exe手动生成它,从而减轻exception。 如何让Visual Studio自动生成XML序列化程序集? 更新:生成序列化程序集:On设置不会显示任何内容。

并发性:C ++ 11内存模型中的primefaces和易失性

一个全局variables在两个不同核心上的两个并发运行的线程之间共享。 线程写入和读取variables。 对于primefacesvariables,一个线程可以读取一个陈旧的值? 每个内核可能在其caching中具有共享variables的值,并且当一个线程写入其caching中的副本时,另一个内核中的另一个线程可能会从自己的caching中读取过时值。 或者编译器执行强大的内存sorting来从其他caching中读取最新值? c ++ 11标准库有std :: atomic支持。 这与volatile关键字有什么不同? 在上述情况下,volatile和atomictypes的performance会有什么不同?

我怎样才能传递一个类的成员函数作为callback?

我正在使用一个API,要求我传递一个函数指针作为callback。 我试图从我的class级使用这个API,但我得到编译错误。 这是我从我的构造函数做的: m_cRedundencyManager->Init(this->RedundencyManagerCallBack); 这不会编译 – 我得到以下错误: 错误8错误C3867:'CLoggersInfra :: RedundencyManagerCallBack':函数调用缺less参数列表; 使用&CLoggersInfra :: RedundencyManagerCallBack创build一个指向成员的指针 我试着build议使用&CLoggersInfra::RedundencyManagerCallBack – 没有为我工作。 对此有何build议/解释? 我正在使用VS2008。 谢谢!!