自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 static 全解

原文地址:http://blog.csdn.net/caiqinghua0201/article/details/60763331. 问题产生#if 1typedef double Unit#elsestruct Unit{    double unit;    Unit(_unit)    {if (_unit       unit = _unit;}

2016-03-23 16:44:24 409

转载 虚基类(虚继承) 原理

原文地址:点击打开链接在《深度探索C++对象模型》里,有一个问题,也是去公司面试的时候那些技术人员常问的问题:在C++中,obj是一个类的对象,p是指向obj的指针,该类里面有个数据成员mem,请问obj.mem和p->mem在实现和效率上有什么不同。答案是:只有一种情况下才有重大差异,该情况必须满足以下3个条件:(1)、obj 是一个虚拟继承的派生类的对象

2016-03-17 15:15:30 660

原创 二叉树 非递归遍历

#include #include #include struct node{ node(int i = 0):val(i),lch(NULL),rch(NULL){}; int val; node* lch; node* rch;};void preOrder(node* root){ if(NULL == root){ printf("empty tree.\n")

2016-03-02 15:45:33 294

原创 *p++ *++p *(p++) *(++p)

注意 : 有括号没括号其实一样#include int main(){ char *p1 = "bm"; char *p2 = "bm"; char *p3 = "bm"; char *p4 = "bm"; char c1 = *p1++; char c2 = *++p2; ch

2016-02-27 15:40:06 658 1

原创 关键字声明extern

都在函数外,全局声明时:1,extern int a;        仅声明,而没有定义a, 还没为a分配存储空间2,extern int a = 0; 错误, 此时不要定义. 用G++ 编译不会报错,但是不能编译出来的文件不能执行.具体用法:在头文件中仅 声明: 如// test.h#include

2016-02-26 10:08:20 320

原创 char ,unsigned char 还有位移 >> <<

>> >>右移有点不同,算术的话高位会补符号位,10000001 >> 2   =11100001                                 逻辑的话 10000001 >> 2   =01100001另外 1char , unsigned char 只有转为int ,unsigned int 这些需要补位的时候才有区别~#include

2016-02-23 20:20:41 2570 1

转载 unordered_map -

unordered_map - [c++学习]版权声明:转载时请以超链接形式标明文章原始出处和作者信息及本声明http://www.blogbus.com/wewe39-logs/121389636.html同事告诉我用unordered_map代替hash_map,好像是标准推荐的吧。(都是哈希啦)头文件#include 命名空间using n

2015-05-19 20:58:24 630

原创 sscanf() cin.getline(buf,size) getline(cin,str)

sscanf() 在stdio.hcin.getline() iostreamgetline string.  马克一下,用得少怕忘

2015-05-09 10:59:30 340

原创 静态函数,instance

#include using namespace std;class Config{public: void set_a(int _a) {a = _a;} void set_b(int _b) {b = _b;} int get_a() { return a; } int get_b() { return b; }

2015-05-07 10:28:32 629

转载 (转) C++ 静态成员和函数的总结(不知道原创在哪里=。=)

类中的静态成员真是个让人爱恨交加的特性。我决定好好总结一下静态类成员的知识点,以便自己在以后面试中,在此类问题上不在被动。 静态类成员包括静态数据成员和静态函数成员两部分。 一 静态数据成员: 类体中的数据成员的声明前加上static关键字,该数据成员就成为了该类的静态数据成员。和其他数据成员一样,静态数据成员也遵守public/protected/private访问规则。同时

2015-05-07 09:13:40 284

转载 LINUX 的system()函数

#include int system(const char *string);例:在~/myprogram/目录下有shell脚本test.sh,内容为  #!bin/bash  #test.sh  echo $HOME  在该目录下新建一个c文件systemtest.c,内容为:  #include    main()

2015-03-24 11:26:12 382

转载 reinterpret_cast

http://baike.baidu.com/link?url=Ey-jEkgSKwsHK4345Y6Ca4EmrCkhpeKmTzwuF4E2vTR4t3x71-Bu7g9Jt8iYSVL7xKjgQvWBUu7FLTLJBkXlc_

2015-03-20 10:23:11 338

转载 C语言中的static

C程序一直由下列部分组成:      1)正文段——CPU执行的机器指令部分;一个程序只有一个副本;只读,防止程序由于意外事故而修改自身指令;      2)初始化数据段(数据段)——在程序中所有赋了初值的全局变量,存放在这里。      3)非初始化数据段(bss段)——在程序中没有初始化的全局变量;内核将此段初始化为0。       4)栈——增长方向:自顶向下增长;自动变量以

2015-01-18 21:58:43 275

转载 动态链接库和静态链接库

静态连接:就是把(lib)文件中用到的函数代码直接链接进目标程序,程序运行的时候不再需要其它的库文件;     动态链接:就是把调用的函数所在文件模块(DLL)和调用函数在文件中的位置等信息链接进目标程序,程序运行的时候再从DLL中寻找相应函数代                      码,因此需要相应DLL文件的支持。   lib有静态lib和动态lib之分:  静态lib

2015-01-04 16:57:11 343

转载 LINUX环境并发服务器的三种实现模型

服务器设计技术有很多,按使用的协议来分有TCP服务器和UDP服务器。按处理方式来分有循环服务器和并发服务器。1  循环服务器与并发服务器模型在网络程序里面,一般来说都是许多客户对应一个服务器,为了处理客户的请求,对服务端的程序就提出了特殊的要求。目前最常用的服务器模型有:·循环服务器:服务器在同一时刻只能响应一个客户端的请求·并发服务器:服务器在同一时刻可以

2014-12-23 11:08:37 596

转载 opengl坐标系

OPENGL坐标系可分为:世界坐标系和当前绘图坐标系。 世界坐标系:在OpenGL中,世界坐标系是以屏幕中心为原点(0, 0, 0),且是始终不变的。你面对           屏幕,你的右边是x正轴,上面是y正轴,屏幕指向你的为z正轴。长度单位这样来定:           窗口范围按此单位恰好是(-1,-1)到(1,1),即屏幕左下角坐标为(-1,-1),右上角

2014-12-18 13:49:55 361

转载 汇编指令~

传送门:http://www.cnblogs.com/lxgeek/archive/2011/01/01/1923738.html

2014-12-05 19:36:37 275

原创 ZJU PAT 1004

输出每一层叶子节点数, DFS

2014-11-23 11:58:20 290

原创 C++数组传参

C++以数组作为参数传递, 子函数直接在原数组上操作)

2014-11-22 17:29:09 456

转载 函数模板 和类模板

还是例子说话。函数模板:template max(const T a, const T b){  return (a>b ? a : b);}这样用://intint a = 1, b = 2;max(a, b);//floatfloat c = 1.0f, d = 2.0f;max(c, d);

2014-11-20 18:53:58 282

转载 拷贝构造函数

一. 什么是拷贝构造函数首先对于普通类型的对象来说,它们之间的复制是很简单的,例如:[c-sharp] view plaincopyint a = 100;  int b = a;   而类对象与普通对象不同,类对象内部结构一般较为复杂,存在各种成员变量。下面看一个类对象拷贝的简单例子。

2014-11-19 20:10:46 337

转载 Explicit Constructors(显式构造函数)

按照默认规定,只有一个参数的构造函数也定义了一个隐式转换,将该构造函数对应数据类型的数据转换为该类对象,如下面所示:class String {String ( const char* p ); // 用C风格的字符串p作为初始化值//…}String s1 = “hello”; //OK 隐式转换,等价于String s1 = String(“hello”

2014-11-19 19:40:44 288

原创 HDU ACM 1081 最大子矩阵问题

子矩阵肯定是1行,2行,……,n行的。然后用一个li

2014-11-13 16:42:51 404

原创 数组指针操作元素

数组指针:int (*a)[10] ;  表示a的跨度是10个整数。  注意与指针数组区别 int *a[10];如果要对

2014-11-13 10:26:18 449

原创 HDU ACM 1024(最大子序列和)

2维表table[i][j] 表示将序列分成i段, 且最后一个结尾

2014-11-13 09:13:12 412

原创 非虚函数的绑定

非虚函数不会占用子类或者是

2014-11-12 19:40:40 331

转载 函数的默认值+带默认参数的函数

我们可以赋予函数参数默认值。所谓默认值就是在调用时,可以不写某些参数的值,编译器会自动把默认值传递给调用语句中。默认值可以在声明或定义中设置;也可在声明或定义时都设置,都设置时要求默认值是相同的。  关于默认值要注意几点:  1.若在定义时而不是在声明时置默认值,那么函数定义一定要在函数的调用之前。因为声明时已经给编译器一个该函数的向导,所以只在定义时设默认值时,编译器只有检查到定

2014-11-11 11:30:32 1898

原创 ZJU PAT 1003 Emergency

最短路径,DFS。。  据说路径非负的话还能用dijkstra算法。

2014-11-06 21:27:45 312

原创 dynamic_cast & static_cast

之前转过一个关于dynamic_cast 和 static_cast的。感觉没

2014-11-06 00:30:03 366

原创 虚函数&继承

class A{public: int a,b; void fun1(){...}; void fun2(){...}; virtual void virfun1(){...};// 假设存储该函数的地址为1 virtual void virfun2(){...};//假设存储该函数的地址为2};class B public:A{public:

2014-11-05 23:42:09 411

原创 虚函实现原理

虚函数在类继承中的重要性不用多说,先来两个例子

2014-11-05 22:43:06 454

原创 HDU ACM 1061

水题,注意等于0的情况。#includeusing namespace std;int main(){ int a[10][10] = {0}; int b[10] = {0}; for(int i = 1 ; i < 10 ; i++) { int tmp = i; a[i][1] = tmp; b[i] = 1; int* p = &a[i][2]; wh

2014-11-04 21:04:54 326

原创 hdu acm 1051 贪心,排序,dilworth定理,最长递减序列长度

dilworth 定理: 最小链划分数  =  最大反链的长度。于是先按照l 或者 w 排序, 再求

2014-10-21 21:57:55 483

原创 1058 丑数

如果直接一个个判断过去, 肯定爆炸

2014-10-19 20:15:05 286

原创 HDU ACM 1050 贪心

注意:输入顺序可以使凌乱的。

2014-10-16 22:55:26 318

原创 HDU ACM 1052

数组T[] K[]分别表示田和king 的马, t,k

2014-10-16 20:04:04 377

原创 HDU ACMA 1025 最小递增序列, 二分

#include#define maxn 500002using namespace std;int pc[maxn];int ln[maxn]; void insert_(int &len_ , int  &num_); int main(){int n , p , r;int sb = 1;while(cin >> n){int len

2014-10-14 09:19:10 495

原创 1002. A+B for Polynomials (25)

代码如下。#include#includeusing namespace std;int main(){float a[1001] = {0};int b[1001] = {0};bool c[1001] = {0};int n , tmp , count_, max_;float ftmp;cin >>n;count_ = max_

2014-10-12 11:21:09 371

原创 关于memset

memset是按字节赋值的(1byte), 所以, 通常用它来对字符串进行复值会比较ha

2014-10-11 22:04:56 335

原创 new, delete 的用法

当然容器需要重新非配内存时,需要一次为许多内存

2014-10-09 20:43:20 312

空空如也

空空如也

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

TA关注的人

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