C++
肥羊汤
我很懒,什么都不想写
展开
-
C++常用命令
本文不对各个函数进行详细介绍,仅对本人在编程过程中使用的方法进行简单记录。(1) string 字符串截取子串//从Hello World!的下标为2的位置截取5个长度的字符串string str = "Hello World!";string str1 = str.substr(2,5); //第一个参数是截取开始的下标,第二个参数是截取的位数cout << s...原创 2020-03-24 22:03:14 · 3181 阅读 · 0 评论 -
关闭cin读入同步,加速程序
static const auto _ = []() { std::ios::sync_with_stdio(0); std::cin.tie(0); return 0;}();以上代码加速C++程序运行,可以来取消 iostream 的输入输出缓存,节省许多时间,使效率与scanf与printf相差无几。其中:(1)C++与C兼容性解绑C++为了保证程序在...原创 2020-03-21 00:01:36 · 2049 阅读 · 1 评论 -
异常处理
异常通常的程序异常有两种:编译异常:即语法错误。程序无法生成运行代码。 逻辑异常:包含可预料和不可预料两类。C++提供了一些内置的语言特性来产生(raise)或抛出(throw)异常,用以通知“异常已经发生”,然后由预先安排的程序段来捕获(catch)异常,并对其进行处理。这种机制可以使连那个无关(往往是独立开发)的部分进行“异常”通信。由程序的某一部分引发了另一部分的异常,这一异常可...原创 2020-03-12 18:41:30 · 113 阅读 · 0 评论 -
标准模板库(STL)
STL标准模板库(Standard Template Library,STL)是一个基于模板的容器类库。可用STL创建一个类,为任意数据类型定义矢量、链表、队列和栈等操作。STL中的泛型算法(generic algorithm)和函数对象(function object)使算法摆脱了对不同数据类型个性操作的依赖。STL主要提供三类工具:容器、迭代器和算法。目录(一)容器类(1)...原创 2020-03-12 15:09:39 · 1365 阅读 · 0 评论 -
函数模板与类模板定义和使用
模板是将具有相似性的类和函数归纳起来构成一个类族或函数族,它可是程序具有通用性。模板分为类模板和函数模板。目录(一)函数模板一般定义形式模板函数重载函数模板参数带有多类型参数的函数模板(二)类模板类模板的使用(一)函数模板int max(int a,int b);float max(float a,float b);double max(double ...原创 2020-03-10 23:08:14 · 2821 阅读 · 0 评论 -
解决 stack around the variable " " was corrupted 问题
在我建立一个包含学生信息的文本文件,并向文件输出数据时,出现了堆栈问题。源码如下:#include "stdafx.h"#include <iostream>#include <fstream>#include <stdlib.h>using namespace std;int _tmain(int argc, _TCHAR* argv[])...原创 2020-03-09 16:09:45 · 34409 阅读 · 1 评论 -
文件操作和文件流
文件流是以外存文件为输入输出对象的数据流。每一个文件流都有一个内存缓冲区与之对应。要以磁盘文件为对象进行输入输出,必须定义一个文件流类的对象,它使数据从内存输出到磁盘文件,或者通过文件流对象将数据从磁盘文件输入到内存。在C++的 I/O 类库中定义了三种流可以处理文件操作:ifstream类,是从输入流 istream 类派生的,支持从磁盘文件的输入操作。 ofstream类,是从输出流...原创 2020-03-08 22:10:35 · 2066 阅读 · 0 评论 -
C++的输入和输出
C++语言本身不提供输入与输出的操作,但是可以使用标准库提供的输入与输出功能,即程序中独立于设备的 I/O 操作。输入与输出包括:标准的输入输出(标准 I/O),即对系统指定的标准设备的 I/O 操作。用 cin 和 cout 从键盘输入数据,结果输出到显示器屏幕。 文件的输入输出(文件 I/O),即以外存中的文件为对象进行输入和输出。包括从磁盘文件输入数据,或将数据输出到磁盘文件。 ...原创 2020-03-08 00:31:13 · 4649 阅读 · 0 评论 -
多态性
C++程序设计中,多态性是指具有不同功能的函数可以用同一个函数名,这样就可以用同一函数名调用不同的函数。在面向对象方法中一般这样表述多态性:向不同的对象发送同一个消息,不同的对象在接收时会产生不同的行为(即方法)。也就是说,每个对象可以用自己的方式去响应共同的消息。前面的重载就体现了多态性。基类指针与派生类指针基类指针可以访问基类对象对应的基类中的所有基类成员和成员函数。基类指针可以访...原创 2020-03-05 00:03:00 · 734 阅读 · 1 评论 -
函数的重载
函数的重载在同一作用域内相同的函数名对应不同的函数实现即是函数的重载。两个同名函数作为重载必须满足其中一个条件:每个函数的参数个数不同。 参数个数相同,但至少有一个参数的类型不同。int max(int a, int b){}int max(int a, int b, int c){}或int max(int a, int b){}float max(float a, f...原创 2020-03-02 23:29:20 · 3485 阅读 · 0 评论 -
继承和派生
基类和派生类class Student //基类{ //...};class CollegeStudent : public Student //大学生是学生的派生类{ //... };派生类对于基类继承提供了代码的重用性。派生类的增加部分提供了对原有代码扩充和改进的能力。继承的特点:一...原创 2020-03-01 22:36:45 · 315 阅读 · 0 评论 -
静态成员、this指针
静态数据成员静态数据成员要在数据成员定义前加关键字static,编译器将静态数据成员存放在静态存储区。对于多个对象来说,静态数据成员只存储一处,便可供所有的对象使用。只要对静态数据成员的值更新一次,便可保证所有对象存取更新后的值相同,有利于提高时间效率。静态数据成员被定义后,必须对齐进行初始化。初始化在类体外进行,一般放在该类的实现部分,也可放在其他位置。class counter...原创 2020-02-28 23:33:48 · 1323 阅读 · 0 评论 -
友元
友元是一种定义在类外部的普通函数,但需要在类内进行声明,为了与该类的成员函数进行区分,在声明时加入关键字friend。它可以是一个函数,该函数称为友元函数。也可以是一个类,该类称为友元类。友元机制可以访问类中的保护成员和私有成员。友元函数class Point{private: double x,y;public: Point(double xx,double yy...原创 2020-02-28 22:29:42 · 697 阅读 · 0 评论 -
对象
对象定义(1)定义类的同时定义对象class Ex{ int i;public: int Mod() { return I; }}data1,data2; //定义两个对象data1和data2(2)先定义类再定义对象class Ex{ int i;public: int Mod() ...原创 2020-02-28 17:05:10 · 126 阅读 · 0 评论 -
类
类的三大特性封装性:将紧密相关的数据和方法组合成类,并对类中的成员访问进行限制,防止外界对类内部的破坏。 继承性:经过不同程度的抽象,将分散的各种类联系起来,从而建立起一个相互联系的系统。当系统中添加新类时,不用从头开始写程序,只需要从已有的系统中选取相应的基类,继承它,然后添加新的功能即可。 多态性:类定义一个接口可以有不同的实现,只有在类运行时才确定使用哪个实现。类的定义cla...原创 2020-02-27 17:19:52 · 120 阅读 · 0 评论 -
类中函数参数一致性
(1)参数明确定义构造函数应该使得对象处于明确定义的状态。 string() { s = new char[80];}string( int n) { s = new char[n];}//以上两个函数中,s没有被明确定义,如果只调用函数而没有给s赋值,则指针s指向空//我们首先对s进行初始化,以确保s被明确定义。//函数中我们将两个函数通过默认参数...原创 2020-02-25 22:36:01 · 1077 阅读 · 0 评论 -
MFC使摄像头录像在picture中显示时常出现崩溃问题
在创建MFC,获取摄像头数据在picture控件中显示,虽能正常显示,但在运行3~5分钟或者更短的时间,会使MFC卡住,或者软件当机。经测试和查询,主要产生卡死的原因是CRect myrect;被定义成全局变量,可能是由于多次复制帧导致内存占满,从而导致MFC卡死。解决方案:将CRect myrect;定义成私有变量,将picture控件的显示放在一个单独的函数里执行,不占用整个MFC的内存。因此...原创 2018-05-22 13:10:57 · 650 阅读 · 0 评论 -
MFC配置imagingSource工业摄像头和反色问题解决方案
废话不多说,开始配置imagingSource摄像头(一)配置imagingSource摄像头(1)首先下载驱动程序,我这里用的是38Ux版本的摄像头,驱动如下:https://www.theimagingsource.cn/%E6%94%AF%E6%8C%81/%E8%BD%AF%E4%BB%B6%E4%B8%8B%E8%BD%BD-windows/%E9%A9%B1%E5%8A%A8%E7%A...原创 2018-06-24 14:29:18 · 2240 阅读 · 8 评论 -
MFC使用imagingSource相机读取并保存单张照片
在前一篇【MFC配置imagingSource工业摄像头和反色问题解决方案】的基础上,只需要两条语句即可实现m_pSink->snapImages(1); 读取一张照片(1),或n张照片(n) m_pSink->getLastAcqMemBuffer()->save("图片路径及名称");//保存到相应的名然后配合定时器【Timer】进行计时循环保存多张照片。...原创 2018-06-25 13:54:40 · 1058 阅读 · 6 评论 -
MFC添加list control控件并用表格对txt数据显示、格式化、超链接
(一) list control控件的建立(1)新建【MFC】,从【工具箱】中将【list control】控件拖选到DiaLog下;(2)然后点击【list control】控件,【右击】,【属性】,将【view】设置为【Report】,效果如下: (3)【右击】,【类向导】,【成员变量】,【添加变量】,【m_list】,如图:...原创 2018-07-14 11:39:28 · 9317 阅读 · 6 评论 -
VS下MFC程序打包成安装包
不废话,正题!正题!!正题!!!(1)打开VS,【新建】=> 【项目】=> 【Visual Studio Installer】=> 【安装项目】或【安装向导】(2)生成了如下安装包生成项目(3)选择【应用程序文件夹】=>【添加】=>【文件】(4)将你项目下的第一个【Debug】下的 ForODSystem.exe ForODSy...原创 2018-09-24 22:50:30 · 13334 阅读 · 2 评论 -
MFC使用mscomm控件实现plc通信
废话不多说,直入主题!我们的mscomm控件实现plc通信,主要分三步走:(一)mscomm控件下载,注册(1)可以百度搜索下载mscomm控件(2)如果觉得麻烦可以在我上传的资源处下载,地址:https://download.csdn.net/download/u012839256/10677537注册方法可参照https://blog.csdn.net/u013457167...原创 2018-09-20 10:01:14 · 2798 阅读 · 0 评论 -
基于win32api的PLC与MFC通信
作者使用欧姆龙PLC,采用FCS校验,用Win32API,在MFC上实现通讯。话说,这个贼简单,直接上代码(1)首先,创建端口,并初始化参数。hCom=CreateFile("COM4", GENERIC_READ | GENERIC_WRITE,0,NULL,OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL,NULL);SetupComm(hCom,1024...原创 2018-09-20 10:24:24 · 728 阅读 · 2 评论 -
MFC的list control控件实现点击变色,并保持滚动条不变
寄 https://blog.csdn.net/u012839256/article/details/81041116 之后功能的完善。本篇文章,实现了MFC的list control控件实现点击变蓝,并保持滚动条不变。在之前代码:file.Open("");//打开文件while( file.ReadString(szLine) )//读取并显示文件{}file.clo...原创 2018-09-20 15:16:46 · 1044 阅读 · 4 评论 -
C++使用opencv产生line:1322 _CrtlsValidHeapPointer(pUserData) 异常
line:1322 _CrtlsValidHeapPointer(pUserData) 异常解决方案直接运行产生下图异常:既然产生了异常,那就赶紧解决吧,于是开始调试,结果调到最后没发现啥异常,又弹出这个鬼,说是堆损坏,我的个乖乖。。。解决方案:!!!经过两天的搜寻和探索,终于找到了解决方案,一起往下看。首先我们一直使用的是共享DLL库,也就是动态库,当然我不是说动态库就是产生这个异常的原因,可...原创 2018-05-16 22:27:30 · 6147 阅读 · 0 评论