自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(308)
  • 资源 (2)
  • 收藏
  • 关注

原创 C/C++ 笔试、面试题目大汇总(更新中)

https://www.cnblogs.com/fangyukuan/archive/2010/09/18/1829871.htmlhttps://blog.csdn.net/Damage233/article/details/81116115C/C++ 笔试、面试题目大汇总21.求下面函数的返回值( 微软)int func(x) { int countx =0; ...

2019-03-05 12:47:28 200

原创 Qt样式表总结

概念Qt的样式表主要是受到CSS的启发,通过调用setStyleSheet(),可以为一个独立的子部件、整个窗口、甚至整个应用程序制定一个样式表。样式表具有继承关系,例如为一个QWidget类设置了样式表,那么QWidget类及其子类都会使用这个样式表语法基本语法格式下面列出了一些基本组合,可以任意组合,各个组合间通过,分割即可。选择器{ 属性: 值;}QPushButton{ color: red;}选择器 : 状态{ 属性: 值;}QPushButt

2020-11-08 17:16:52 143

原创 《Effective C++》学习笔记

Effective C++视C++为一个语言联邦尽量以const、enum、inline替换#define视C++为一个语言联邦可以将C++视为一个由许多次语言组成的联邦:CObject-Oriented C++Template C++STL每个次语言都有自己的规约。尽量以const、enum、inline替换#define可以理解为“宁可以编译器替换预处理器”。例如对于#define ASPECT_RATIO 1.653,当你运用此常量但获得一个编译错误时,可能会带来困惑,因为这个

2020-08-16 18:33:51 133

原创 《高质量程序设计指南--C/C++语言》学习笔记

《高质量程序设计指南--C/C++语言》学习笔记一般地,软件设计应该将“设备相关程序”与“设备无关程序”分开,将“功能模块”与“用户界面”分开,这样可以提高可移植性。尽可能复用你所能复用的东西。修改错误代码时的注意事项:发现错误时不要急于修改,先思考一下修改此代码会不会引发其他问题。考虑是否还有同类型的其他错误。不论原有程序是否绝对正确,只要对此程序做过改动(哪怕是微不足道的),都要进行回归测试。对于以源代码形式提供的库,必须使用当前的编译器对其重新编译;如果是二进制级的库,除非它的开发商

2020-06-13 17:13:56 192

原创 C++ Primer 学习笔记 总目录

C++ Primer第一章 快速入门第二章 变量和基本类型第一章 快速入门《C++ Primer》学习笔记(一):快速入门第二章 变量和基本类型《C++ Primer》学习笔记(二):变量和基本类型...

2020-05-30 12:29:24 325

原创 Linux常用指令

Linux常用指令查看帮助命令 man常用系统工作命令reboot命令poweroff命令echo命令date命令--显示及设置系统的时间或日期wget命令--从指定的URL下载文件ps命令--报告当前系统的进程状态top命令--实时动态地查看系统的整体运行情况pidof命令--查询某个指定服务进程的PID值kill命令--终止某个指定PID的服务进程killall命令--终止某个指定名称的服务所对应的全部进程系统状态检测命令ifconfig命令--用于获取网卡配置与网络状态等信息uname命令--查看系统

2020-05-30 12:22:01 155 1

原创 《C++ Primer》学习笔记(十六):模板与泛型编程

《C++ Primer》学习笔记(十六):模板与泛型编程定义模板函数模板定义模板函数模板template <typename T>int compare(const T &v1, const T &v2){ if(v1 < v2) return -1; if(v2 < v1) return 1; return 0;}...

2020-05-29 09:14:35 144

原创 《C++ Primer》学习笔记(十五):面向对象编程

《C++ Primer》学习笔记(十五):面向对象编程抽象基类访问控制与继承面向对象编程的核心思想是数据抽象、继承和动态绑定。在C++语言中,当我们使用基类的引用(或指针)调用一个虚函数时将发生动态绑定。派生类经常(但不总是)覆盖它继承的虚函数。如果派生类没有覆盖基类中的某个虚函数,则该虚函数的行为类似于其他的普通成员,派生类会直接继承其在基类中的版本。派生类可以在它覆盖的函数前使用virtual关键字,但不是一定要这么做。也可以在函数的形参列表后面添加一个关键字override关键字来说明。如果我

2020-05-26 17:48:42 123

原创 《C++ Primer》学习笔记(十四):重载运算与类型转换

《C++ Primer》学习笔记(十四):重载运算与类型转换输入和输出运算符算术和关系运算符赋值运算符下标运算符递增和递减运算符成员访问运算符当一个重载的运算是成员函数时,this绑定到左侧运算对象。成员运算符函数的(显式)参数数量比运算对象的数量少一个。//一个非成员函数的等价调用data1 + data2; //普通的表达式operator+(data1, data2); //等价的函数调用data1 += data2; //基于“调用的表达式”data1.operator+=(data

2020-05-24 12:09:05 99

原创 《C++ Primer》学习笔记(十三):拷贝控制

《C++ Primer》学习笔记(十三):拷贝控制拷贝、赋值与销毁拷贝构造函数拷贝赋值运算符析构函数三/五法则使用=default拷贝、赋值与销毁拷贝构造函数如果一个构造函数的第一个参数是自身类类型的引用,且任何额外参数都有默认值,则此构造函数是拷贝构造函数。虽然可以定义一个接受非const引用的拷贝构造函数,但是一般都是使用const引用作为参数。拷贝构造函数在几种情况下都会被隐式调用,因此一般不应是explicit的。拷贝赋值运算符class Foo{public: Foo& op

2020-05-23 12:14:32 102

原创 《C++ Primer》学习笔记(十二):动态内存

《C++ Primer》学习笔记(十二):动态内存动态内存与智能指针shared_ptr内存耗尽shared_ptr与new结合使用智能指针和异常unique_ptrweak_ptr动态数组allocator类程序用堆来存储动态分配的对象,当动态对象不再使用时,我们的代码必须显式地销毁它们。动态内存与智能指针C++中动态内存的管理是通过new和delete来完成的。为了更安全地使用动态内存,提供了两种智能指针类型来管理动态对象,均定义在memory头文件中。shared_ptr:允许多个指针指向同

2020-05-20 17:09:48 101

原创 《C++ Primer》学习笔记(十一):关联容器

《C++ Primer》学习笔记(十一):关联容器使用关联容器定义关联容器关键字类型的要求pair类型关联容器迭代器关联容器中的元素是按关键字来保存和访问的。map中保存的是键值对(key-value),关键字起索引所用,值则保存相应的数据。set中的每个元素只包含一个关键字,支持高效的关键字查询操作。map和multimap定义在头文件map中,set和multiset定义在头文件set中。无序容器定义在unordered_map和unordered_set中,无序容器使用哈希函数来组织元素。

2020-05-19 10:47:27 116 1

原创 《C++ Primer》学习笔记(十):泛型算法

《C++ Primer》学习笔记(十):泛型算法初识泛型算法只读算法写容器元素的算法重排容器元素的算法定制操作向算法传递函数lambda表达式泛型算法是一组公共接口,可以用于不同类型的元素和多种容器类型。泛型算法本身不会执行容器的操作,只会运行于特定迭代器上,执行迭代器的操作,即不会改变底层容器的大小。但是标准库定义了一类特殊的迭代器:插入器(inserter)。与普通迭代器只能遍历所绑定的容器相比,插入器能做更多的事情。当给这类迭代器赋值时,它们会在底层的容器上执行插入操作。因此当一个算法操作这样的迭

2020-05-17 16:26:41 127 1

原创 《C++ Primer》学习笔记(九):顺序容器

《C++ Primer》学习笔记(九):顺序容器容器库概述容器定义和初始化赋值和swap顺序容器为程序员提供了控制元素存储和访问顺序的能力,这种顺序与元素加入容器时的位置相对应。而与之相对的,关联容器则是根据关键字的值来存储元素。容器库概述容器选择基本原则:除非有合适的理由选择其他容器,否则应该使用 vector。如果程序有很多小的元素,且空间的额外开销很重要,则不要使用 list...

2020-05-09 19:17:44 138

原创 《C++ Primer》学习笔记(八):IO库

《C++ Primer》学习笔记(八):IO库IO类IO象无拷贝或赋值条件状态管理输出缓冲文件输入输出使用文件流对象IO类头文件iostream 定义了用于读写流的基本类型,fstream 定义了读写命名文件的类型,sstream 定义了读写内存中 string对象的类型。为了支持使用宽字符的语言,标准库定义了一组类型和对象来操纵wchar_t类型的数据。宽字符版本的类型和函数的名字以一个...

2020-05-01 12:08:24 139

原创 《C++ Primer》学习笔记(七):类

《C++ Primer》学习笔记(七):类

2020-04-30 12:04:56 209

原创 《C++ Primer》学习笔记(六):函数

《C++ Primer》学习笔记(六):函数函数基础局部对象函数声明分离式编译参数传递数组形参main:处理命令行选项含有可变形参的函数返回数组指针函数基础一个典型的 函数(function) 定义包括:返回类型(return type)、函数名字、由0个或多个形式参数(parameter,简称形参)组成的 列表 和 函数体(function body)。函数执行的操作在语句块中说明,即函数体...

2020-04-27 17:21:33 104

原创 《C++ Primer》学习笔记(五):语句

《C++ Primer》学习笔记(五):语句switch语句迭代语句for循环执行顺序try语句块和异常处理throw表达式try语句块标准异常switch语句不允许跨过变量的初始化语句直接跳转到该变量作用域内的另一个位置。如果需要为 switch 的某个 case 分支定义并初始化一个变量,则应该把变量定义在块内。case true: { // 正确:声明语句位于语句块内部...

2020-04-25 10:24:44 115

原创 《C++ Primer》学习笔记(四):表达式

《C++ Primer》学习笔记(四):表达式左值和右值求值顺序算数运算符逻辑和关系运算符赋值运算符递增和递减运算符成员访问运算符左值和右值当一个对象被用作右值的时候,用的是对象的值(内容);当对象被用作左值的时候,用的是对象的身份(在内存中的位置)。使用关键字decltype的时候,如果表达式的求值结果是左值,decltype作用于该表达式(不是变量)得到一个引用类型。举个例子,假定p的类...

2020-04-24 11:24:19 111

原创 《C++ Primer》学习笔记(三):字符串、向量和数组

字符串、向量和数组命名空间的using声明标准库类型string命名空间的using声明using namespace::name头文件不应包含using声明:因为头文件的内容会拷贝到所有引用它的文件夹中去,如果头文件中有某个using声明,那么每个使用了该头文件的文件都会有这个声明,这样可能会不经意间包含了一些声明,发生始料未及的名字冲突。标准库类型string标准库类型 string...

2020-04-22 16:52:28 112

原创 《C++ Primer》学习笔记(二):变量和基本类型

《C++ Primer》学习笔记(二):变量和基本类型基本内置类型算数类型类型转换字面值常量变量变量声明和定义的关系变量命名规则作用域复合类型引用指针const限定符C++ 语言定义了几种基本类型:**字符型、整型、浮点型 **等;除此之外,还提供了可用于 自定义数据类型 的机制,标准库正是利用这些机制定义了许多更复杂的类型,比如 **可变长字符串 string、vector **等;最后,还能...

2020-04-19 12:29:10 149

原创 《C++ Primer》学习笔记(一):快速入门

《C++ Primer》学习笔记(一):快速入门初识输入输出控制流练习每个 C++ 程序必须含有 main 函数,且 main 函数是(唯一)被操作系统显式调用的函数。定义 main函数和定义其他函数一样。定义函数必须指定 4 个元素:返回类型、函数名、圆括号内的形参表(可能为空)和函数体。main 函数的返回值必须是 int 型。初识输入输出C++ 并没有直接定义任何输入或输出(IO)...

2020-04-17 12:06:55 138

原创 VSCODE的正确打开方式

VSCode命令行启动风格包快捷键定制快捷键系统内置快捷键基础编辑导航搜索和替换多光标和选择语言编辑显示控制代码调试常用插件命令行启动在命令行界面输入code 路径/文件名 即可启动VSCode打开对应文件。风格包AyuMaterial Theme快捷键定制快捷键Ctrl+k+s 调出快捷键设置系统内置快捷键官方速查文档**按 Press **功能 Function...

2020-04-16 18:36:14 592

原创 source insight

source insight几种逆天功能:1.同步2.查看定义3.查找引用4.查找调用附录:Source Insight常用快捷键注:SI可以加不同路径的代码进入你的工程添加源代码文件后需要进行Project->Synchronous Files操作几种逆天功能:1.同步在编辑区域中,键盘按下Ctrl,用鼠标单击变量或方法时,会跳到变量或方法的定义。如果某个变量或者方法是黑...

2020-04-16 10:53:06 88

转载 Python正则表达式指南

1. 正则表达式基础1.1. 简单介绍正则表达式并不是Python的一部分。正则表达式是用于处理字符串的强大工具,拥有自己独特的语法以及一个独立的处理引擎,效率上可能不如str自带的方法,但功能十分强大。得益于这一点,在提供了正则表达式的语言里,正则表达式的语法都是一样的,区别只在于不同的编程语言实现支持的语法数量不同;但不用担心,不被支持的语法通常是不常用的部分。如果已经在其他语言里使用...

2020-04-01 17:56:35 72

转载 Python argparse 命令项选项与参数解析模块

argparseargparse 是 Python 内置的一个用于命令项选项与参数解析的模块,通过在程序中定义好我们需要的参数,argparse 将会从 sys.argv 中解析出这些参数,并自动生成帮助和使用信息。当然,Python 也有第三方的库可用于命令行解析,而且功能也更加强大,比如 docopt,Click。argparse 使用简单示例我们先来看一个简单示例。主要有三个步骤:...

2019-11-03 10:41:38 197

原创 pytorch常用函数

总体介绍https://pytorch.apachecn.org/docs/1.2/torch.htmlnn实现了神经网络中大多数的损失函数,例如nn.MSELoss用来计算均方误差,nn.CrossEntropyLoss用来计算交叉熵损失。nn.Module是nn中最重要的类,可把它看成是一个网络的封装,包含网络各层定义以及forward方法,调用forward(input)方法,可返回前...

2019-10-26 09:58:40 573 2

转载 C++序列容器存储智能指针详解

通常用容器保存指针比保存对象更好,而且大多数时候,保存智能指针比原生指针好。下面是一些原因:在容器中保存指针需要复制指针而不是它所指向的对象。复制指针通常比复制对象快。在容器中保存指针可以得到多态性。存放元素基类指针的容器也可以保存其派生类型的指针。当要处理有共同基类的任意对象序 列时,这种功能是非常有用的。应用这一特性的一个常见示例是展示一个含有直线、曲线和几何形状的对象序列。对指针容器...

2019-09-14 11:04:15 1108

原创 两个栈实现一个队列 两个队列实现一个栈

两个栈实现一个队列基础方法入队时,将元素压入s1。出队时,将s1的元素逐个“倒入”(弹出并压入)s2,将s2的顶元素弹出作为出队元素,之后再将s2剩下的元素逐个“倒回”s1。改进方法入队时,将元素压入s1。出队时,判断s2是否为空,如不为空,则直接弹出顶元素;如为空,则将s1的元素逐个“倒入”s2,把最后一个元素弹出并出队。这个思路,避免了反复“倒”栈,仅在...

2019-09-10 19:40:24 77

转载 构造函数、析构函数、虚函数可否内联,有何意义

在语法上没有错误首先要掌握一点,构造函数、析构函数、虚函数可以声明为内联函数,这在语法上是正确的。如下面代码是正确的,因为inline同register一样,只是个建议,编译器并不一定真正的内联,在语法上是没有错误的:class A{public: inline A() {} inline ~A() {} inline virtual void virt...

2019-09-08 20:47:35 221

转载 C++ STL中的vector的内存分配与释放

1.vector的内存增长vector其中一个特点:内存空间只会增长,不会减小,援引C++ Primer:为了支持快速的随机访问,vector容器的元素以连续方式存放,每一个元素都紧挨着前一个元素存储。设想一下,当vector添加一个元素时,为了满足连续存放这个特性,都需要重新分配空间、拷贝元素、撤销旧空间,这样性能难以接受。因此STL实现者在对vector进行内存分配时,其实际分配的容量要比...

2019-09-05 21:52:36 632

原创 进程间通信

进程间通信的方式——信号、管道、消息队列、共享内存多进程:首先,先来讲一下fork之后,发生了什么事情。由fork创建的新进程被称为子进程(child process)。该函数被调用一次,但返回两次。两次返回的区别是子进程的返回值是0,而父进程的返回值则是新进程(子进程)的进程 id。将子进程id返回给父进程的理由是:因为一个进程的子进程可以多于一个,没有一个函数使一个进程可以获得其所有子进...

2019-09-03 16:48:00 80

原创 设计模式原则

原则备注单一职责原则一个类只负责一个功领域的相应职责开闭原则软件实体应对扩展开放,而对修改关闭里氏替换原则所有引用基类的地方能够透明地使用其子类对象依赖倒转原则抽象不应该依赖于细节,细节应该依赖于抽象接口隔离原则使用多个专门的接口,而不使用单一的总接口合成复用原则尽量使用对象组合,而不是继承来达到复用的目的迪米特法则一个软件实体...

2019-09-02 20:58:43 60

原创 单播、多播和广播

单播、多播和广播单播:信息的接受和传递只在两个节点之间进行,点对点通信。网络上绝大部分数据是以单播的形式传输的,例如在收发电子邮件、浏览网页时,必须与邮件服务器、Web服务器建立连接,此时使用的就是单播数据传输方式。多播:也可以称为“组播”,将网络中同一业务类型主机进行了逻辑上的分组,进行数据收发的时候其数据仅仅在同一分组中进行,其他的主机没有加入此分组不能收发对应的数据。网上视频会议、视频...

2019-09-02 11:20:10 1082

转载 【设计模式】单例模式

1. 饿汉模式使用饿汉模式实现单例是十分简单的,并且有效避免了线程安全问题,因为将该单例对象定义为static变量,程序启动即将其构造完成了。代码实现:class Singleton {public: static Singleton* GetInstance() { return singleton_; } static void DestreyInstance...

2019-08-22 21:01:01 90

原创 为什么复制构造函数的参数需要加const和引用

#include <iostream>using namespace std;class A{public: A(){ cout<<"default construct"<<endl; } ~A(){ cout<<"destructed"<<endl; } ...

2019-08-21 20:33:50 392

原创 全排列和全组合实现

全排列所谓全排列,就是打印出字符串中所有字符的所有排列。例如输入字符串abc,则打印出 a、b、c 所能排列出来的所有字符串abc、acb、bac、bca、cab和cba。一般最先想到的方法是暴力循环法,即对于每一位,遍历集合中可能的元素,如果在这一位之前出现过了该元素,跳过该元素。例如对于abc,第一位可以是 a 或 b 或 c 。当第一位为 a 时,第二位再遍历集合,发现...

2019-08-21 11:24:42 2940

转载 全排列

一.全排列算法首先:什么是全排列=》百度一下从n个不同元素中任取m(m≤n)个元素,按照一定的顺序排列起来,叫做从n个不同元素中取出m个元素的一个排列。当m=n时所有的排列情况叫全排列。公式:全排列数f(n)=n!(定义0!=1)算法:递归算法=》网络上偷了一个图全排列:顺便复习一个数学公式排列的定义:...

2019-08-21 09:58:53 168

原创 虚拟内存

虚拟内存是计算机系统内存管理的一种技术。它使得应用程序认为它拥有连续可用的内存(一个连续完整的地址空间),而实际上,它通常是被分隔成多个物理内存碎片,还有部分暂时存储在外部磁盘存储器上,在需要时进行数据交换。与没有使用虚拟内存技术的系统相比,使用这种技术的系统使得大型程序的编写变得更容易,对真正的物理内存(例如RAM)的使用也更有效率。注意:虚拟内存不只是“用磁盘空间来扩展物理内存”的意...

2019-08-19 21:02:57 343

转载 Qt信号与槽实现原理

https://blog.csdn.net/fuyunzhishang1/article/details/48345381object.h#ifndef DB_OBJECT#define DB_OBJECT#include <map># define db_slots# define db_signals protected# define db_emitc...

2019-08-19 11:03:08 336

AR人脸库_图片jpg格式

包含50个男性与50个女性的人脸图片 男性图像存储为:M-xx-yy.jpg 女性图像存储为为:w-xx-yy.jpg 'xx'是唯一的人物标识符, 'yy'指定每个图像的特征; 其含义如下表所示: 1:中性表达 2:微笑 3:愤怒 4:尖叫 5:左灯亮 6:正确点亮 7:所有侧灯都亮了 8:戴太阳眼镜 9:戴上太阳眼镜并留下光线 10:戴上太阳眼镜并右上灯 11:戴围巾 12:戴上围巾,左手轻盈 13:戴上围巾,右上灯 14至26:同一个人在另一个时期拍摄的图片(与1至13相同的条件)

2019-03-26

Sparse and Redundant Representations 中文翻译

This textbook introduces sparse and redundant representations with a focus on applications in signal and image processing. The theoretical and numerical foundations are tackled before the applications are discussed. Mathematical modeling for signal sources is discussed along with how to use the proper model for tasks such as denoising, restoration, separation, interpolation and extrapolation, compression, sampling, analysis and synthesis, detection, recognition, and more. The presentation is elegant and engaging. Sparse and Red undant Representations is intended for graduate students in applied mathematics and electrical engineering, as well as applied mathematicians, engineers, and researchers who are active in the fields of signal and image processing.

2018-12-10

空空如也

空空如也

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

TA关注的人 TA的粉丝

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