Tag: C#的

在C ++中是否存在隐式的默认构造函数?

在我正在阅读的书中( C ++ Without Fear ),它说如果你没有为一个类声明一个默认的构造函数,那么编译器会为你提供一个,它将“清除每个数据成员”。 我已经试验过了,我没有看到任何调零行为。 我也找不到在Google上提到的任何内容。 这只是一个特定编译器的错误或怪癖吗?

转换和转换有什么区别?

Eric Lippert在这个问题上的评论让我感到十分困惑。 C#中的转换和转换有什么区别?

为什么std :: shared_ptr <void>工作

我发现一些代码使用std :: shared_ptr在关机时执行任意清理。 起初我以为这个代码不可能工作,但后来我尝试了以下几点: #include <memory> #include <iostream> #include <vector> class test { public: test() { std::cout << "Test created" << std::endl; } ~test() { std::cout << "Test destroyed" << std::endl; } }; int main() { std::cout << "At begin of main.\ncreating std::vector<std::shared_ptr<void>>" << std::endl; std::vector<std::shared_ptr<void>> v; { std::cout << "Creating test" << std::endl; v.push_back( […]

我怎样才能将数字格式化为前导零的string?

我有一个数字,我需要转换为一个string。 首先我用这个: Key = i.ToString(); 但是我意识到这是按照奇怪的顺序sorting的,所以我需要用零填充它。 我怎么能这样做?

Convert.ChangeType()在可空types上失败

我想将string转换为对象属性值,其名称作为string。 我正在尝试这样做: string modelProperty = "Some Property Name"; string value = "SomeValue"; var property = entity.GetType().GetProperty(modelProperty); if (property != null) { property.SetValue(entity, Convert.ChangeType(value, property.PropertyType), null); } 问题是这是失败,并且当属性types是可为空的types时抛出一个无效的转换exception。 这不是值不能被转换的情况下 – 他们将工作,如果我手动(例如DateTime? d = Convert.ToDateTime(value); )我已经看到一些类似的问题,但仍然无法得到它上class。

如果已知外部和内部参数,则从2D图像像素获取3D坐标

我正在做tsai algo的相机校准。 我得到了内在和外在的matrix,但是我怎样才能从这个信息中重build三维坐标呢? 1)我可以使用高斯消去来findX,Y,Z,W,然后点将是X / W,Y / W,Z / W作为同质系统。 2)我可以使用OpenCV文档方法: 因为我知道u , v , R , t ,我可以计算X,Y,Z 。 但是,这两种方法的结果都不一样,不正确。 我在做什么错了?

Light C Unicode库

我正在寻找一个小C库来处理utf8string。 具体来说,基于统一码分隔符进行分词以用于词干分析algorithm。 相关post提示: ICU http://www.icu-project.org/ (我发现它太笨重,因为我在embedded式设备上的目的) UTF8-CPP: http : //utfcpp.sourceforge.net/ (优秀,但C ++不C) 有没有人发现任何平台独立,小代码库处理Unicodestring(不需要做归化)。 任何意见将不胜感激。

C ++unit testing框架

我为我的C ++代码使用Boosttesting框架,但是有两个问题可能对所有C ++testing框架都是通用的: 没有办法创build自动testing存根(例如通过从选定的类中提取公共函数)。 你不能运行一个单一的testing – 你必须运行整个“testing套件”(除非你创build了很多不同的testing项目)。 有谁知道更好的testing框架还是我永远嫉妒可用于Java / .NET开发人员的testing工具?

通过等待任务或访问它的Exception属性,没有观察到任务的exception。 结果,没有被察觉的例外是

这是什么意思,如何解决? 我正在使用TPL任务。 整个错误 通过等待任务或访问它的Exception属性,没有观察到任务的exception。 结果,终结者线程重新抛出了未观察到的exception。 在System.Threading.Tasks.TaskExceptionHolder.Finalize() mscorlib程序

运算符重载与C#扩展方法

我正在尝试使用扩展方法将操作符重载添加到C# StringBuilder类。 具体来说,给定的StringBuilder sb ,我想sb += "text"等于sb.Append("text") 。 以下是为StringBuilder创build扩展方法的语法: public static class sbExtensions { public static StringBuilder blah(this StringBuilder sb) { return sb; } } 它成功地将这个扩展方法添加到了StringBuilder 。 不幸的是,运算符重载似乎不起作用: public static class sbExtensions { public static StringBuilder operator +(this StringBuilder sb, string s) { return sb.Append(s); } } 在其他问题中,关键字在这种情况下是不允许的。 是否可以通过扩展方法添加运算符重载? 如果是这样,那么有什么正确的方法呢?