- 博客(32)
- 问答 (3)
- 收藏
- 关注
转载 为何会有enable_share_from_this
这几天看到了这个东西,一直很疑惑这是干嘛的,看到stackoverflow上面的一个大牛的解释,原话如下:The key point is that the "obvious" technique of just returning shared_ptr(this) is broken, because this winds up creating multiple distinc
2016-10-04 11:08:51
486
原创 快速 和堆 排序算法
#include #include #include #include using namespace std;void quickSort(int arr[], int i, int j){int i1 = i;int i2 = j;if(i {int tmp = arr[i];while(i {while(arr[j] >
2016-09-10 09:29:56
323
原创 给定一个数n,输出n的环形矩阵
#include #include #include using namespace std;void HelixMatrix(int n){ int **a = new int*[n]; int i; for (i = 0; i < n; i++) a[i] = new int[n]; int m = 0; int j; int t;
2016-09-02 00:14:11
1363
转载 创建模型总结
这个例子感觉比较好,感觉讲抽象问题时最好举例说明,很多人在说模式时都是概念上讲概念,最后很多人只是记住概念,还是不会用。下面例子原址 http://bbs.chinaunix.net/thread-3585936-1-1.html简单工厂。请注意,简单工厂不是GOF的23种设计模式之一。GOF的23种设计模式中,有两种关于工厂的模式,是工厂方法模式和抽象工厂模式。简单工厂和工厂方法模式不
2016-09-01 15:26:10
467
原创 C++模版总结
函数模版:1 模版函数使用时,是不允许自动类型转换的,通过实参演绎,生成对应函数实例。2,模版实参演绎不是和模版函数的返回类型, 可以通过交换模版参数位置,实现返回类型的显示实例化。3 函数模版实例通常被看成用来命名一组重载函数的集合,所以用函数模版实例 去演绎 函数模版参数时,需要指定该函数模版实例的具体类型。(C++ templates P37,这句话看了好几天)4 使用字符串
2016-08-26 09:33:30
310
原创 sizeof 可变参数的模版特化 C++ templa
1 sizeof 测量函数返回值大小的时候,是不执行函数的2 可变参数列表可以没有一个参数,只是不能用参数了(这句不知到对不对)3 可变参数列表再模版实例化过程中比较弱;#include using namespace std;long long fun1(...){cout return 3l;}
2016-08-25 20:18:02
1298
转载 gdb调试多进程、线程
1. 默认设置下,在调试多进程程序时GDB只会调试主进程。但是GDB(>V7.0)支持多进程的分别以及同时调试,换句话说,GDB可以同时调试多个程序。只需要设置follow-fork-mode(默认值:parent)和detach-on-fork(默认值:on)即可。 follow-fork-mode detach-on-fork 说明parent
2016-08-24 21:07:48
293
原创 C++ 关于构造,赋值函数
1 拷贝构造函数必须参数必须为引用, 如果不是会编译错误, 从逻辑上讲:拷贝函数会在 调用函数传递该类型 值类型的参数,返回该类型的值类型的参数 ,以及现实调用,如果拷贝函数参数也是值类型,前两者情况就会出现反复调用。2 赋值运算重载, 函数第二个参数也最好是const 引用 ,当类型重载加法或者别的运算需要用到该类型的临时变量时,该临时变量都是const 对象,先不说了,可能会表达错误
2016-07-24 15:18:36
365
原创 C++\C指针作为参数
在 用指针作为函数参数时1 参数指针指向实参内存地址,如果在函数里面从新赋值给参数指针地址,该参数不会指向实参地址了,因此,如果希望函数修改实参指针内容,必须在调用函数里面申请内存,并且在被调用函数里面解引用参数指针。
2016-07-20 19:53:36
339
转载 锁 互斥量 信号量
原帖地址:http://blog.youkuaiyun.com/lhf_tiger/article/details/7203299 转载一下 Mutex是一把钥匙,一个人拿了就可进入一个房间,出来的时候把钥匙交给队列的第一个。一般的用法是用于串行化对critical section代码的访问,保证这段代码不会被并行的运行。 Semaphore是一件可以容纳N人的房间,如果人不
2016-07-16 22:31:58
315
转载 返回函数的指针, 参数为函数指针。。。。。
C++通过引用传递数组 数组形参可以声明为数组的引用。如果形参是数组的引用,编译器不会将数组实参转化为指针,而是传递数组的引用本身。在这种情况下,数组大小成为形参和实参类型的一部分(实参长度与形参长度不同时,编译报错)。 void printValue(int (&a)[5]){...} int main(){ int i=0; int j[2]={0,1};
2016-07-16 22:07:26
397
转载 va_start和va_end使用详解
本文主要介绍va_start和va_end的使用及原理。 在以前的一篇帖子Format MessageBox 详解中曾使用到va_start和va_end这两个宏,但对它们也只是泛泛的了解。 介绍这两个宏之前先看一下C中传递函数的参数时的用法和原理: 1.在C中,当我们无法列出传递函数的所有实参的类型和数目时,可以用省略号指定参数表void foo(
2016-07-11 21:54:17
364
原创 内存对齐,malloc内存对齐
1 #include 2 #include 3 using namespace std;4 5 int main()6 {7 struct {8 int a;9 long b;10 float c;11 double d;12 }var;13 int a[5] = {0};14 cout 15 cout 16 cout 17 cout
2016-07-02 13:03:25
1280
原创 sizeof 指针 和数组名
1 #include 2 3 using namespace std; 4 5 void func(short arr[]) 6 { 7 cout 8 } 9 int main() 10 { 11 short arr[10] = {0}; 12 short *p = arr; 13
2016-06-20 16:56:53
512
转载 VC MFC工具栏(CToolBar)控件
VC MFC工具栏(CToolBar)控件工具栏工具栏控件在控件面板里没有对应的选项(图标),但有一个工具栏控件类CToolBar,所以我们如果要创建一个工具栏控件并显示在窗口里的话,只能用代码来完成,事实上任何一种控件,都可以用代码创建,如CButton按钮类,现举一个用代码创建按钮控件并显示在窗口里的例子。CButton类的Create成员函数可以创建一个按钮控件,这个函数的格式如
2016-05-27 20:38:53
608
原创 利用杨辉三角求组合代码
//在数据类型内运算可以求得正确结果,代码有冗余,由三角矩阵的两列可以得出全部组合数列,暂时先用这种笨拙的方法#include using namespace std;int main(int argc, char* argv){ long long M,N,K;long long i,j; cin >> M; cin >>
2016-05-21 17:29:12
328
转载 opengl 配置问题
opengl的高级菜鸟问题 看了一本书《OpenGL三维图形系统开发与应用技术》,但是,其中涉及到glut.h文件的函数无法正常连接,典型的错误如下: ------ 已启动生成: 项目: gears, 配置: Debug Win32 ------ 1>正在链接... 1>GEARS.obj : error LNK2019: 无法解析的外部符号 ___glutInitWit
2016-05-18 10:50:11
419
转载 重载操作符解析
重载操作符是个好青年,但是要吐槽的是,我们时常为了重载操作符编写许多重复的代码。这是枯燥的,但是也是必须的。你重载的越多,你的类的弹性就越大。但是,你也不能为所欲为。玩游戏总是遵守相应的规则,写重载操作符亦是如此! 以下是要遵守的游戏规则:一元操作符可以是不带参数的成员函数或带一个参数的非成员函数。二元操作符可以是带一个参数的成员函数或带两个参数的非成员函数。operator
2016-05-09 22:42:42
304
转载 xshell 连接到虚拟机
1.安装VMware11.0,这个软件在网上有很多,也都有破解版2.安装CentOS-6.5-x86_64-LiveDVD.iso,我使用的这个版本也是从网上下载的,700多M;网上还有个最小系统的,我也试了,不知道为什么就是装不上,如果有人用那个安装成功了,请指教。3.按照下面这个教程操作,http://wenku.baidu.com/link?url=KornMzLj-
2016-04-01 10:04:35
370
转载 $@
$@: 代表规则中的目标文件名。如果目标是一个文档(Linux中,一般称.a文件为文档),那么它代表这个文档的文件名。在多目标的模式规则中,它代表的是哪个触发规则被执行的目标文件名。
2016-03-04 15:59:20
415
转载 Linux下C++中的内存对齐
1.首先第一个问题就是为什么要进行对齐,现代计算机中内存空间都是按照byte划分的,从理论上讲似乎对任何类型的变量的访问可以从任何地址开始,但实际情况是在访问特定类型变量的时候经常在特 定的内存地址访问,这就需要各种类型数据按照一定的规则在空间上排列,而不是顺序的一个接一个的排放,这就是对齐。 对齐的作用和原因:各个硬件平台对存储空间的处理上有很大的不同。一些平台对某些特定类型的数据只
2016-02-29 20:26:49
466
原创 java包编译问题
1 编译java文件时,如果包内含有import别的类时,编译器会寻找这个包,包内可以是.class 文件也可以是源文件,如果是源文件,会对它进行编译,生成的.class会和它的源文件在同一个目录下面;包的名称必须和目录结构相同。
2016-01-12 16:33:52
268
转载 linux系统编译C++程序时头文件和库文件搜索路径
C++编译时,教科书中写道:#include “headfile.h”优先在当前目录查找头文件;#include 从系统默认路径查找头文件。先前以为系统默认路径是环境变量$PATH指定的路径,在系统上一查,傻了眼:-bash-3.2$ echo$PATH/usr/local/bin:/bin:/usr/bin:/sbin:/usr/sbin:/usr/X11R6/bin:/usr/java
2015-12-21 16:51:43
753
转载 字符流stringstream详解
以下内容转自:http://www.usidcbbs.com/read-htm-tid-1898.htmlC++引入了ostringstream、istringstream、stringstream这三个类,要使用他们创建对象就必须包含sstream.h头文件。istringstream类用于执行C++风格的串流的输入操作。 ostringstream类用于执行C++风格的
2015-08-22 11:08:52
562
转载 C/C++中extern关键字详解
C/C++中extern关键字详解1 基本解释:extern可以置于变量或者函数前,以标示变量或者函数的定义在别的文件中,提示编译器遇到此变量和函数时在其他模块中寻找其定义。此外extern也可用来进行链接指定。 也就是说extern有两个作用,第一个,当它与"C"一起连用时,如: extern "C" void fun(int a, int b);则告诉编译器在编译fun这
2015-08-17 10:19:37
300
转载 list_entry()详解
Linux内核中,获取节点地址的函数list_entry()非常常用,由于其定义有点晦涩,先解析如下:list_entry的宏定义:#define list_entry(ptr, type, member) / ((type *)((char *)(ptr)-(unsigned long)(&((type *)0)->member))) 这个倒是不难理解:从一个
2015-05-23 16:33:35
419
转载 在Linux下改变进程的优先级
作为多任务的操作系统,Linux内核为每个创建的进程分配时间片并根据其优先级进行调度。当进程被创建时,其对应的task_struct里包含了四个优先级:struct task_struct { …… int prio, static_prio, normal_prio; unsigned
2015-05-22 15:31:50
326
转载 在Linux下改变进程的优先级
作为多任务的操作系统,Linux内核为每个创建的进程分配时间片并根据其优先级进行调度。当进程被创建时,其对应的task_struct里包含了四个优先级:struct task_struct { …… int prio, static_prio, normal_prio; unsigned
2015-05-22 15:14:06
326
转载 关于C C++的const详细讲解
C中的CONST C中CONST的使用: const是一个C语言的关键字,它限定一个变量不允许被改变。使用const在一定程度上可以提高程序的安全性和可靠性,另外,在观看别人代码的时候,清晰理解const所起的作用,对理解对方的程序也有一些帮助。 虽然这听起来很简单,但实际上,const的使用也是c语言中一个比较微妙的地方,微妙在何处呢?请看下面几个问题。 问题:const变量 &
2015-04-27 14:17:53
548
空空如也
MFC CBitmap 和 HBITMAP 析构问题
2016-07-10
MFC如何添加png格式图标的工具栏,图标都是png格式的
2016-06-01
C++沉思录第九章编译问题
2015-12-24
TA创建的收藏夹 TA关注的收藏夹
TA关注的人