Tag: C#的

可空<int>与int? – 有什么区别?

显然Nullable<int>和int? 价值相当。 有什么理由select一个吗? Nullable<int> a = null; int? b = null; a == b; // this is true

String.Contains()比String.IndexOf()更快吗?

我有一个约2000字符的string缓冲区,需要检查缓冲区是否包含特定的string。 将在每个webrequest的ASP.NET 2.0 webapp中进行检查。 有谁知道如果String.Contains方法执行比String.IndexOf方法更好? // 2000 characters in s1, search token in s2 string s1 = "Many characters. The quick brown fox jumps over the lazy dog"; string s2 = "fox"; bool b; b = s1.Contains(s2); int i; i = s1.IndexOf(s2); 有趣的事实

线程Control.Invoke

我有一个function public void ShowAllFly() { cbFly.Items.Clear(); cbFly.Items.Add("Uçuş Seçiniz…"); dsFlyTableAdapters.tblFlyTableAdapter _t=new KTHY.dsFlyTableAdapters.tblFlyTableAdapter(); dsFly _mds = new dsFly(); _mds.EnforceConstraints = false; dsFly.tblFlyDataTable _m = _mds.tblFly; _t.Fill(_m); foreach (DataRow _row in _m.Rows) { cbFly.Items.Add(_row["FlyID"].ToString()+"-"+_row["FlyName"].ToString() + "-" + _row["FlyDirection"].ToString() + "-" + _row["FlyDateTime"].ToString()); } _Thread.Abort(); timer1.Enabled = false; WaitPanel.Visible = false; } 在Form_Load函数中像这样; { _Thread = new System.Threading.Thread(new System.Threading.ThreadStart(ShowAllFly)); […]

在单独的线程中更新ObservableCollection

在WPF应用程序中,通过LINQ to SQL查询填充和更新ObservableCollection。 然后使用这个ObservableCollection中的值更新UI对象。 LINQ to SQL查询更新这个ObservableCollection的操作在单独的线程中执行是否可行? 如果是的话,在这种情况下,它会是这个ObservableCollection的同一个实例吗? (我的意思是,如果它不是从LINQ datacontext中获取值,也不是用于更新UI的值,那么我将无法更新UI)

广场检测不find正方形

我正在使用OpenCV库样本中的square.c程序。 它适用于每个图像,但我真的不知道为什么它不能识别在该图像中绘制的正方形 http://desmond.imageshack.us/Himg12/scaled.php?server=12&filename=26725680.jpg&res=medium CANNY之后: http : //img847.imageshack.us/img847/6787/canny.jpg DILATE之后: http : //img593.imageshack.us/img593/3010/dilate.jpg 结果图片(红色) http://img267.imageshack.us/img267/8016/resultuq.jpg 正如你所看到的,广场是不被检测到的。 检测后,我需要提取广场中包含的区域…如果没有投资回报率,怎么可能?

如何在Qt中高效地显示OpenCVvideo?

我在OpenCV的帮助下从networking摄像机捕获多个stream。 当我尝试从OpenCV窗口( cv::namedWindow(…) )显示这些stream,它的工作原理没有任何问题(迄今为止我已经尝试了4个stream)。 当我尝试在Qt小部件中显示这些stream时出现问题。 由于捕获是在另一个线程完成的,我必须使用信号槽机制来更新QWidget(在主线程中)。 基本上,我从捕获线程发出新捕获的帧,GUI线程中的一个插槽捕获它。 当我打开4个stream,我不能像以前一样顺利地显示video。 这是发射器: void capture::start_process() { m_enable = true; cv::Mat frame; while(m_enable) { if (!m_video_handle->read(frame)) { break; } cv::cvtColor(frame, frame,CV_BGR2RGB); qDebug() << "FRAME : " << frame.data; emit image_ready(QImage(frame.data, frame.cols, frame.rows, frame.step, QImage::Format_RGB888)); cv::waitKey(30); } } 这是我的插槽: void widget::set_image(QImage image) { img = image; qDebug() << "PARAMETER IMAGE: " […]

如何使用openssl生成RSA私钥?

我想知道如何在c源文件中使用openssl liberary生成RSA私钥? 我知道如何使用terminal命令生成它。 其实我的server.c文件将生成一个私钥并发送到client.c请尽可能帮助我一些源代码,否则任何帮助将不胜感激。 我正在使用Linux机器。

为什么使用RelayCommand

我最近在WPF中进行了很多编程,但是我的View和ViewModel在这个时候并不是独立的。 那是部分的 我所有与文本框中的文本,标签内容,datagrid中的列表有关的绑定,都是通过常规属性来完成的,其中包含一个NotifyPropertyChanged事件。 我所有的事件处理button点击或文本更改的东西是通过链接事件。 现在,我想开始使用命令,并find这篇文章: http : //www.codeproject.com/Articles/126249/MVVM-Pattern-in-WPF-A-Simple-Tutorial-for-Absolute 。 它有一个如何设置MVVM的解释,但我与RelayCommand混淆。 它做什么工作? 在我的表单中的所有命令是否可用? (a)某些文本框未填写时,如何禁用button? 编辑1: 一个很好的解释是“所有的命令都适用于我的forms吗?” 在这里回答: https : //stackoverflow.com/a/22286816/3357699 这是我到目前为止的代码: https : //stackoverflow.com/a/22289358/3357699

在C ++中复制一个Polymorphic对象

我有派生Derived1 , Derived2和Derived1基类Base 。 我已经为我存储为Base* a的派生类之一构造了一个实例。 我现在需要做一个对象的深层拷贝,我将把它存储为Base* b 。 据我所知,复制类的正常方法是使用复制构造函数并重载operator= 。 但是因为我不知道a是Derived1 , Derived2还是Derived1 ,所以我想不出使用拷贝构造函数或者operator= 。 我能想到干净地做这个工作的唯一方法是实现类似于: class Base { public: virtual Base* Clone() = 0; }; 和实现Clone在派生类如下: class Derivedn : public Base { public: Base* Clone() { Derived1* ret = new Derived1; copy all the data members } }; Java倾向于使用Clone相当多是有更多的C ++方式这样做?

获取硬盘序列号

我想获得硬盘序列号。 我怎么能这样做? 我尝试了两个代码,但我没有得到 StringCollection propNames = new StringCollection(); ManagementClass driveClass = new ManagementClass("Win32_DiskDrive"); PropertyDataCollection props = driveClass.Properties; foreach (PropertyData driveProperty in props) { propNames.Add(driveProperty.Name); } int idx = 0; ManagementObjectCollection drives = driveClass.GetInstances(); foreach (ManagementObject drv in drives) { Label2.Text+=(idx + 1); foreach (string strProp in propNames) { //Label2.Text+=drv[strProp]; Response.Write(strProp + " = " + […]