自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(18)
  • 收藏
  • 关注

转载 opencv向Mat中写入数据并显示

#include#includeusing namespace std;using namespace cv;void createAlphaMat(Mat& mat){ for (size_t i = 0; i < mat.rows; i++) { for (size_t j = 0; j < mat.cols; j++) { Vec4b &rgba = mat.

2016-10-27 09:49:23 4101

转载 c++中必须在类初始化列表中初始化的几种情况

文章转载自http://www.cnblogs.com/kaituorensheng/p/3477630.html以下几种情况必须在构造函数的初始化列表中:类的const常量类的引用类型成员没有默认构造函数的类类型成员没有默认构造函数的类类型成员详细情况如下: 1. 类成员为const类型2.类成员为引用类型#include <iostream>using namespace std;

2016-10-17 20:56:49 786

转载 C++中的const成员函数

文章转载自http://www.cnblogs.com/kaituorensheng/p/3244910.html1.const成员变量#include using namespace std;class A{ public: A(int size) : SIZE(size) {}; private: const int SIZE

2016-10-17 20:41:17 347

转载 百度面试题:宏的概念,与函数的区别,优缺点的比较。

文章转载自:http://www.xuebuyuan.com/1669200.html宏宏概念:C++ 宏定义将一个标识符定义为一个字符串,源程序中的该标识符均以指定的字符串来代替。宏书写形式:#define () 宏与函数的区别:时间上考虑:1.宏只占编译时间,函数调用则占用运行时间(分配单元,保存现场,值传递,返回

2016-10-17 18:04:22 505

原创 Effective C++ 0导读

1.构造函数尽量被声明为explicit,这样可以阻止它们被用来执行隐式类型转换(implicit type conversions),但它们仍可被用来进行显示类型转换(explicit type conversions)(P5)。2.拷贝构造函数:(1)拷贝构造函数是一种特殊的构造函数,函数的名称必须和类名称一致,它必须的一个参数是本类型的一个引用变量(2)编译器会给我们自动产生一个

2016-10-17 16:40:32 321

原创 c++设计模式之观察者模式(observer)

【概念】观察者模式定义了对象之间的一对多依赖,这样一来,当一个对象改变状态时,它的所有依赖者都会收到通知并自动更新。相当于邮箱当中的订阅功能。UML图抽象主题(Subject):把所有观察者对象的引用保存在列表里,提供注册和删除观察者对象的接口。抽象观察者(Observer):为那些在目标发生改变时须获得通知的对象定义一个更新接口。具体主题(Concrete Subje

2016-10-16 21:28:40 322

转载 C++设计模式之策略模式(Strategy Pattern)

文章转载自http://blog.csdn.net/LCL_data/article/details/10255125【概述】策略模式:定义了算法族,分别封装起来,让它们之间可以互相替换,此模式让算法的变化独立于使用算法的客户。策略模式通常把一个系列的算法包装到一系列的策略类里面,作为一个抽象策略类的子类Context(应用场景):1、需要使用ConcreteS

2016-10-09 10:11:13 228

原创 求一个集合所有可能的子集

【1】增量构造法一次选出一个元素放到集合中#include#includeusing namespace std;const int MAX = 100;int layer = -1; //递归层数int count1 = 0;void print_subset(int n, int *A, vector &vi, int cur){ cout << "layer:" <<

2016-10-08 20:02:56 1111

原创 C++的STL中accumulate的用法

accumulate定义在#include中,作用有两个,一个是累加求和,另一个是自定义类型数据的处理1.累加求和int sum = accumulate(vec.begin() , vec.end() , 42);accumulate带有三个形参:头两个形参指定要累加的元素范围,第三个形参则是累加的初值。accumulate函数将它的一个内部变量设置为指定的初始值,然后在此初

2016-10-08 15:07:02 72830 9

转载 C++中的bitset类型

文章转载自http://www.cnblogs.com/BaiYiShaoNian/p/4591167.htmlc++标准库提供bitset类型,头文件#include和vector对象不一样的是bitset类型对象的区别仅在其长度而不在其类型。在定义bitset的时候,要明确bitset包含了多少位,须在尖括号内给出它的长度值。长度值必须定义为整形字面值常量或是已用常量值初始化的整型

2016-10-08 14:17:02 875

转载 c++中的std::pair与std::make_pair

文章转载自:http://www.cnblogs.com/Nimeux/archive/2010/10/05/1844191.htmlstd::pair主要的作用是将两个数据组合成一个数据,两个数据可以是同一类型或者不同类型。例如std::pair 或者 std::pair等。pair实质上是一个结构体,其主要的两个成员变量是first和second,这两个变量可以直接使用。初始化一个pair

2016-10-08 14:07:27 27206

转载 n皇后问题的解法

一、 求解N皇后问题是算法中回溯法应用的一个经典案例回溯算法也叫试探法,它是一种系统地搜索问题的解的方法。回溯算法的基本思想是:从一条路往前走,能进则进,不能进则退回来,换一条路再试。下面是算法的高级伪码描述,这里用一个N*N的矩阵来存储棋盘:      1) 算法开始, 清空棋盘,当前行设为第一行,当前列设为第一列      2) 在当前行,当前列的位置上判断

2016-10-08 09:23:31 1181

转载 C++类的静态成员变量为什么一定要初始化

文章转载自https://my.oschina.net/u/1537391/blog/219432我们知道C++类的静态成员变量是需要初始化的,但为什么要初始化呢。其实这句话“静态成员变量是需要初始化的”是有一定问题的,应该说“静态成员变量需要定义”才是准确的,而不是初始化。两者的区别在于:初始化是赋一个初始值,而定义是分配内存。静态成员变量在类中仅仅是声明,没有定义,所以要在类的外面定义

2016-10-07 20:35:42 5734

原创 例题:枚举排列

枚举排列常见的方法有两种:一种是递归枚举,而是用STL中的next_permutation【1】生成可重集的排列#include#include#includeint p[20];int cmp(const void *a, const void *b){ return *(int *)a - *(int *)b;}void print_permutation(int

2016-10-06 16:42:05 514

原创 C++中一个由编译器决定结果的程序

【代码】#include using namespace std;int get(int i){ cout << i << endl; return i + 1;}int Cal(int a, int b) { return a + b;}int main() { cout << Cal(get(0), get(10)) << endl; return 0;}

2016-10-06 09:53:02 287

原创 例题:最大乘积

【题目】输入n个元素组成的序列S,你需要找出一个乘积最大的连续子序列。如果这个最大的乘积不是正数,应输出0(表示无解)。1样例输入:32 4 -352 5 -1 2 -1样例输出:820【分析】连续子序列有两个要素:起点和终点,因此只需枚举起点和终点即可。由于每个元素的绝对值不超过10且不超过18个元素,最大可能的乘积不会超过10^18,可以用long

2016-10-05 19:52:07 724

原创 例题:除法(UVa 725)

【题目】输入正整数n,按从小到大的顺序输出所有形如abcde/fghij = n的表达式,其中a~j恰好为数字0~9的一个排列,n为2~79;Sample Input61620Sample OutputThere are no solutions for 61.79546 / 01283 = 6294736 / 01528 = 62【分析】使用暴力枚举的方法

2016-10-05 19:28:37 770

转载 C++11中的lambda表达式

参考http://www.jb51.net/article/56147.htmhttp://blog.jobbole.com/104548/lambda就是一个匿名的可调用代码块。在C++11新标准中,lambda具有如下格式:[capture list] (parameter list) -> return type { function body }可以看到,他有四

2016-10-01 10:28:30 232

空空如也

空空如也

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

TA关注的人

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