自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(23)
  • 资源 (1)
  • 收藏
  • 关注

原创 MFC实现对话框的停靠窗口

MFC实现对话框的停靠窗口1.对话框建立插入Dialog,ID改为DIALOG_SET;添加相关控件添加类CSetting对话框的属性设置 border->Nonestyle->child2.停靠窗口建立类导向->添加MFC类->基类CDockablePaneMainFrm.h中添加 pubilc成员 :CClassView m_wndClassView;if (!m_wndClassView.Create(_T("Title"), this, CRect(

2020-09-29 09:35:32 2355 1

原创 C++ 实现小写金额转化为大写金额

C++ 实现小写金额转化为大写金额1.目标输入小写数字字符串输出大写金额字符串类似:2.实现代码与流程对需要用到的字符:string stringNum;string unitInt[] = { "整", "元" };//整数单位string unit[] = {"仟","", "拾","佰"};string words[] = { "零", "壹", "贰", "叁", "肆", "伍", "陆", "柒", "捌", "玖" };//大写数字string unitDecimals

2021-11-10 16:44:12 2113

原创 openCV 像素遍历比较

openCV像素遍历比较创建单通道纯黑图像,尝试多种方法遍历像素,并计时比较。创建单通道纯黑图像//算法计时double t1,t2,t3,t4;Mat blackcount = Mat(6576, 4384, CV_8UC1, Scalar(0));//单通道CV_8UC3,灰度imwrite("count.jpg", blackcount);遍历像素```cpp//at 遍历像素 t1 = (double)getTickCount(); for (i = 0; i &l

2021-08-17 14:12:35 244

原创 C++实现共轭梯度算法

C++实现共轭梯度(CG)算法1.原理对多元函数极值求解2.针对A取正定矩阵3.代码#include<iostream>#include<vector>using namespace std;double C = 0;vector<double> B = { -4,0 };vector<double> X_0;vector<vector<double>> A = { {2.0,-2.0},{-2.0,4.0}

2021-03-17 16:04:06 2593

原创 Python实现高斯曲线拟合

Python实现高斯曲线拟合1.目的针对光谱离散数据,寻峰完成后截取near峰值的数据,利用高斯拟合重绘单峰曲线,进而实现分峰功能2.原理3.代码import numpy as npfrom math import log, expimport matplotlib.pyplot as pltfrom scipy.optimize import curve_fitfrom scipy import asarray as ar,exp # 将txt文件读入numpy数组yOrig

2021-03-17 15:46:13 9700 3

原创 error C3646: 未知重写说明符-可能原因互相引用

关于【error C3646: 未知重写说明符】可能的错误在MSDN的官方网站中,Complier Error C3646的定义为unknown override specifier,并且其解释为The compiler found a token in the position where it expected to find an override specifier, but the token was not recognized by the compiler.1.循环引用在分离式编译中

2020-12-03 15:07:50 5276

原创 视图创建的几个函数讨论

MFC视图创建的几个函数讨论在View中主要使用的几个函数包括:1.构造函数生成本类的对象,但没有产生窗口2.Create在view类中,Create 是虚函数由框架调用,是用来“生成一个窗口的子窗口”。Create()负责注册并产生窗口。一个窗口创建(Create)之后,会向操作系统发送WM_CREATE消息,OnCreate()函数主要是用来响应此消息的。3.OnCreateOnCreate()是一个消息响应函数,是响应WM_CREATE消息的一个函数,而WM_CREATE消息是由Crea

2020-11-20 16:17:24 245

原创 添加测量模块

添加测量模块1.添加MFC类 CQYView,基类CView更改基类CbaseView,添加头文件“BaseView.h”2.对话框资源 IDD_DIALOG_NEW_MEAS [中文(简体)]添加 按钮 ,修改属性caption:量子效率测量ID :IDC_BTN_QuantumYeild双击按钮添加响应函数 void CCreateNewMeas::OnBnClickedBtnQuantumyeild()内容暂定: CMainFrame* pMainFrame = (CMainFr

2020-11-20 16:15:16 96

原创 MFC中的CDC类

MFC中的CDC类windows是一种图形界面的操作系统,它把包括文本在内的所有数据都显示为屏幕上的图像。因此图形的处理是Windows程序设计的重要问题,Windows是依靠图形设备接口(GDI)和设备描述环境(device context,DC)对图形进行支持的。注:GDI是用于改变DC属性的操作函数的集合CDC类则是将DC和GDI函数封装到一起形成的类,即设备描述环境类。CPaintDC是CDC类中最常用的,代表应用程序窗口的客户区,只能被使用在CView类的OnDraw()函数中,声明为:O

2020-11-20 14:00:05 867

原创 基于MDI实现子窗口显示

基于MDI实现子窗口显示本实例是MFC中基于多窗口实现子窗口的文字显示添加类2.类视图->CGoodBye属性->添加绘图消息3.修改消息函数void CGoodBye::OnPaint(){ CPaintDC dc(this); // device context for painting // TODO: 在此处添加消息处理程序代码 // 不为绘图消息调用 CMDIChildWnd::OnPaint() CRect rect; dc

2020-11-11 09:05:51 546

原创 MFC主窗口标题修改

MFC主窗口标题修改类视图->CMainFrameBOOL CMainFrame::PreCreateWindow(CREATESTRUCT& cs){ if( !CMDIFrameWndEx::PreCreateWindow(cs) ) return FALSE; // TODO: 在此处通过修改 // CREATESTRUCT cs m_strTitle = " 量子效率测量系统 "; return CFrameWnd::PreCreateWindow(cs);

2020-10-09 17:16:30 249

原创 MFC多窗口模式中的子窗口标题修改

1.找到ChildFrm.cpp中的PreCreateWindow函数,添加代码:cs.style &=~ (LONG) FWS_ADDTOTITLE;2.类视图->View类->消息OnInitialUpdate,添加代码:CFrameWnd* pFrame = GetParentFrame();pFrame->SetWindowTextW(_T(“光谱图”));...

2020-10-09 17:04:18 474

原创 MFC用List Control 实现表格停靠窗口

MFC用List Control 实现表格停靠窗口1.建立Dialog1.1 类视图->新建Dialog,ID修改为DAILOG_DATA1.2属性 border->None,Style->Child1.3对话框添加控件工具->List Control ,属性->view->report1.4控件关联变量名m_list1.4右击对话框,添加MFC类CDataDlg,基类CDialogEx1.5调整控件大小位置,适应Dialog2.建立停靠窗口2.1类导

2020-09-30 13:58:01 590

原创 删除string中的标点

删除string中的标点string word;word.erase(std::remove_if(word.begin(), word.end(), ispunct),word.end());

2020-09-09 11:03:40 322

原创 C++中如何定义可变形参?

C++中如何定义可变形参?函数传递参数过程中,当实参数量不确定、类型不确定时,C++主要有两种方法:initializer_list形参针对实参数量不定但类型相同的情况。initializer_list是一种标准库类型,用于表示某种特定类型的值得数组。头文件同名;同vector一样的是一种模板类型,定义时需说明对象元素的类型,如: initializer_list<string> ls;而不同于vector的是initializer_list对象中元素为常量值包含操作:初

2020-08-26 10:17:01 301

原创 关键字friend的使用注意点

关键字friendc++中类允许其他类或非成员函数访问其private成员,即使其他类或函数成为该类的友员:1.增加friend关键字开始函数声明语句;2.友员声明只能在类定义内部,且最好在开始或结束处集中声明3.友员声明仅指定访问权限,因此为调用函数需在类外专门进行一次函数声明(有编译器不需要)。...

2020-08-26 10:09:37 167

原创 关键字 `class`和`struct`

关键字 class和struct在C++中,都可以用于定义类,唯一区别在于默认的访问权限:如果使用struct,则定义在第一个***访问说明符***之前的成员是public;如果使用class,则定义在第一个***访问说明符***之前的成员是private;...

2020-08-26 09:16:19 96

原创 C++ 循环条件判断常用`“!=“`而不用`“<“`或`“<=“`

C++ 循环条件判断常用"!="而不用"<"或"<="其原因在于所有的标准库容器的迭代器都定义了==和!=,但其中大多数并没定义<运算符。因此当习惯于用迭代器和!=,就不用太在意用的是哪一种容器类型。进而引入迭代器运算符end:auto e=v.end()//e表示v的尾元素下一位置for(auto it=v.begin();it!=e;it++)//循环条件设置迭代器不指向e在数组中也引入int arr[]={0,1,2,3,4,5,6,7,8,9};int *e=&am

2020-08-18 13:29:29 370

原创 复杂类型的处理-typedef、using、auto、decltype

复杂类型的处理1.类型别名自定义类型的同义词,使得复杂的类型名字变得简单明了、易于理解和使用1.1 typedeftypedef char* pstring//定义pstring与char*同类型1.2 using-别名声明using pstring=char*//定义pstring与char*同类注意:如果类型别名指代复合类型或常量,用于声明中可能出错 typedef char* pstring; const pstring cstr = 0;//cstr是指向char的常量指针

2020-08-14 15:51:44 124

原创 const限定符-引用和指针

const限定符const对变量的类型加以限定,其值不能被改变。因此必须初始化;const int size=512;下面分别从引用和指针的角度去分析const的使用对const的引用1.引用的类型必须和其引用的对象的类型一致,但存在列外:初始化常量引用时允许任意表达式为初始值,该表达式结果能转换成引用的类型;int i=43;const int &r1=i;//允许常量引用绑定非常量的对象、字面值,此时的i是可以转化为const int 类型。int &r2=r1;/

2020-08-13 17:19:46 223

原创 C++复合类型(compound type)——引用和指针的区别

C++复合类型(compound type)——引用和指针的区别1.引用即别名声明语句中,类型名 &组成复合类型-引用,是对已存在的对象起了另外一个名字。int i=1024;int &ri=i;//&紧随类型名,因此是声明的部分,ri是对i的引用 int &ri2;// 报错:未初始化 &出现在表达式中时,为取址符2.指针声明语句中,类型名 *组成复合类型-指针*出现在表达式中时,为解引用符#include<iostream>in

2020-08-11 11:16:10 171

原创 动态单向链表的建立、输出、删除、插入

单向链表的建立、输出、删除、插入动态链表的建立建立链表的函数返回<头指针>;malloc函数(返回void地址)不断分配新的空间给新建的结点;链表的特征就是结点中包含下一结点的位置信息;#include <stdio.h>#include <stdlib.h>#define LEN sizeof(struct Student) struct Student{ int num; int score; struct Student* next;}

2020-08-07 10:30:54 1197 1

原创 单向链表的建立、删除

链表动态进行存储的分配的数据结构;含head、结点(实际数据+下一结点地址);1.以指针定义单结点、双结点链表```c#include <stdio.h>#include <stdlib.h> struct node{ int data; node *next; } ;//*结构体建立最简单的链表* int main(){ struct node *p;//使用指针需先分配动态存储 p=(node*)malloc(sizeof(node));//

2020-08-05 17:30:04 166

FinancialCast.zip

实现小写金额转化为大写金额,完整CPP代码

2021-11-10

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除