摘要:文本设置字体发虚
阅读全文
随笔分类 - C/C++语言
摘要:编译原理PL0语法分析实验1 1,待分析的简单语言的词法相同点:都是分析种别码不同点:词法分析器分析的是字符串中的单词的种别码(单词)语法分析器分析的是字符串的文法是否正确(句子)待分析的简单语言的语法 BNF:(1)<程序>::=begin<语句串>end(2)<语句串>::=<语句>{;<语句>
阅读全文
摘要:Windows平台NASM汇编与C混合调用 tonyblackwhite 之前介绍了Windows平台下,用微软宏汇编MASM与C混合调用的方法。MASM是微软独有的,Linux没法用,我喜欢学一个能够应用于两种平台的,所以还是更钟情于开源的可跨平台的NASM汇编。 tonyblackwhite:W
阅读全文
摘要:pl/0词法分析器 下面是这个分析器的功能: 1、 待分析的简单语言的词法 (1) 关键字: begin if then while do end 所有关键字都是小写。 (2) 运算符和界符: := + – * / < <= <> > >= = ; ( ) # (3) 其他单词是标识符(ID)和整型
阅读全文
摘要:今天用VS2019编译一个在VS2008下Coding的工程的时候,VS给出了一堆链接错误信息,如下图所示的一些错误: Error 47 error LNK2019: unresolved external symbol "public: __thiscall std::_Mutex::~_Mute
阅读全文
摘要:opencv使用split函数进行通道的分离,merge进行通道的合并 可以使用channels求出图像的通道数,示例如下: ROI提取感兴趣的区域 1 #include <opencv2/opencv.hpp> 2 #include <iostream> 3 4 using namespace c
阅读全文
摘要:opencv中提供了很多绘制图形的函数,可以方便的进行图形绘制 直线绘制:line() 函数原型: void line(InputOutputArray img, Point pt1, Point pt2, const Scalar& color, int thickness = 1, int li
阅读全文
摘要:Mat对象的通道信息和长宽信息 1 Mat src = imread("F:/opencv4.1.0/sources/samples/data/orange.jpg",IMREAD_GRAYSCALE); 2 if (src.empty()) 3 { 4 printf("could not find
阅读全文
摘要:详解C++11智能指针 转载自:https://www.cnblogs.com/WindSun/p/11444429.html 前言 C++里面的四个智能指针: auto_ptr, unique_ptr,shared_ptr, weak_ptr 其中后三个是C++11支持,并且第一个已经被C++11
阅读全文
摘要:opencv中可以对Mat对象可以进行位操作,主要有与,非,或,异或操作 具体代码为 1 #include <iostream> 1 #include <iostream> 2 #include <opencv2/opencv.hpp> 3 using namespace cv; 4 using n
阅读全文
摘要:可变参数模板函数 一个可变参数模板函数的定义如下: template <class... T> void f(T... args) { cout<<sizeof...(args)<<endl; //打印变参的个数 } f(); //0 f(1,2); //2 f(1,2.5,""); //3 1.递
阅读全文
摘要:Mat对象的简单算术运算 1 Mat src1 = imread("F:/opencv4.1.0/sources/samples/data/WindowsLogo.jpg"); 2 Mat src2 = imread("F:/opencv4.1.0/sources/samples/data/Linu
阅读全文
摘要:使用at<Vec3b>结构来获取Mat中的像素值 例如 1 #include <iostream> 2 #include <opencv2/opencv.hpp> 3 using namespace cv; 4 using namespace std; 5 6 int main(int args,c
阅读全文
摘要:Mat对象创建 创建空白Mat对象 从现有图像创建 创建填充值的Mat对象 创建单通道与多通道Mat对象 //create one Mat src = Mat(255, 255, CV_8UC1); src=Scalar(0); //创建一个全黑色的画布 (Scalar(0,0,255) 为红色,参
阅读全文
摘要:右值引用就是对一个右值进行引用的类型。因为右值不具名,所以我们只能通过引用的方式找到它 无论声明左值引用还是右值引用都必须立即进行初始化,因为引用类型本身并不具有所绑定对象的内存,只是该对象的一个别名。看一下下面的代码 1 #include <iostream> 2 using namespace
阅读全文
摘要:tuple元组 是一个固定大小的不同类型的集合,是泛华的std::pair。和C#中的tuple类似,但是比C#的tuple强大得多。 我们也可以把它作一个通用的结构体来用,不需要创建结构体有获取结构体的特征,在某些情况下可以取代结构体,使程序更简洁、直观。 下面看看tuple的基本用法: 先构造一
阅读全文
摘要:C++中explicit关键字的使用 看书看到了explicit关键字,就来做个笔记,讲得比较明白,比较浅。 在C++中,我们有时可以将构造函数用作自动类型转换函数。但这种自动特性并非总是合乎要求的,有时会导致意外的类型转换,因此,C++新增了关键字explicit,用于关闭这种自动特性。即被exp
阅读全文
摘要:一,面向过程的static 函数中的静态变量 :当变量声明为static时,空间将在程序的生命周期内分配,其被存放在在全局数据区。即使多次调用该函数,静态变量的空间也只分配一次,前一次调用中的变量值通过下一次函数调用传递。这对于在C / C ++或需要存储先前函数状态的任何其他应用程序非常有用。 例
阅读全文
摘要:const表示常量 在C语言中没有常量关键字,只能用#define来代替,但可能产生问题 如: #define Add a+b 在后面的调用 a=1; b=2; sum = Add *3; sum计算结果为7,不是(1+2)*3的结构9,如果要得到加完后再乘以3,则需要将Add修改为 #define
阅读全文
摘要:opencv显示图片时,使用 Mat src = imread("E:/OpenCV/bin/Resource/lena.jpg"); imread有两个参数Mat cv::imread ( const String & filename [, int flags = IMREAD_COLOR] )
阅读全文