- 博客(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 425
转载 虚基类(虚继承) 原理
原文地址:点击打开链接在《深度探索C++对象模型》里,有一个问题,也是去公司面试的时候那些技术人员常问的问题:在C++中,obj是一个类的对象,p是指向obj的指针,该类里面有个数据成员mem,请问obj.mem和p->mem在实现和效率上有什么不同。答案是:只有一种情况下才有重大差异,该情况必须满足以下3个条件:(1)、obj 是一个虚拟继承的派生类的对象
2016-03-17 15:15:30 671
原创 二叉树 非递归遍历
#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 305
原创 *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 674 1
原创 关键字声明extern
都在函数外,全局声明时:1,extern int a; 仅声明,而没有定义a, 还没为a分配存储空间2,extern int a = 0; 错误, 此时不要定义. 用G++ 编译不会报错,但是不能编译出来的文件不能执行.具体用法:在头文件中仅 声明: 如// test.h#include
2016-02-26 10:08:20 333
原创 char ,unsigned char 还有位移 >> <<
>> >>右移有点不同,算术的话高位会补符号位,10000001 >> 2 =11100001 逻辑的话 10000001 >> 2 =01100001另外 1char , unsigned char 只有转为int ,unsigned int 这些需要补位的时候才有区别~#include
2016-02-23 20:20:41 2639 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 637
原创 sscanf() cin.getline(buf,size) getline(cin,str)
sscanf() 在stdio.hcin.getline() iostreamgetline string. 马克一下,用得少怕忘
2015-05-09 10:59:30 348
原创 静态函数,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 638
转载 (转) C++ 静态成员和函数的总结(不知道原创在哪里=。=)
类中的静态成员真是个让人爱恨交加的特性。我决定好好总结一下静态类成员的知识点,以便自己在以后面试中,在此类问题上不在被动。 静态类成员包括静态数据成员和静态函数成员两部分。 一 静态数据成员: 类体中的数据成员的声明前加上static关键字,该数据成员就成为了该类的静态数据成员。和其他数据成员一样,静态数据成员也遵守public/protected/private访问规则。同时
2015-05-07 09:13:40 291
转载 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 390
转载 reinterpret_cast
http://baike.baidu.com/link?url=Ey-jEkgSKwsHK4345Y6Ca4EmrCkhpeKmTzwuF4E2vTR4t3x71-Bu7g9Jt8iYSVL7xKjgQvWBUu7FLTLJBkXlc_
2015-03-20 10:23:11 349
转载 C语言中的static
C程序一直由下列部分组成: 1)正文段——CPU执行的机器指令部分;一个程序只有一个副本;只读,防止程序由于意外事故而修改自身指令; 2)初始化数据段(数据段)——在程序中所有赋了初值的全局变量,存放在这里。 3)非初始化数据段(bss段)——在程序中没有初始化的全局变量;内核将此段初始化为0。 4)栈——增长方向:自顶向下增长;自动变量以
2015-01-18 21:58:43 285
转载 动态链接库和静态链接库
静态连接:就是把(lib)文件中用到的函数代码直接链接进目标程序,程序运行的时候不再需要其它的库文件; 动态链接:就是把调用的函数所在文件模块(DLL)和调用函数在文件中的位置等信息链接进目标程序,程序运行的时候再从DLL中寻找相应函数代 码,因此需要相应DLL文件的支持。 lib有静态lib和动态lib之分: 静态lib
2015-01-04 16:57:11 351
转载 LINUX环境并发服务器的三种实现模型
服务器设计技术有很多,按使用的协议来分有TCP服务器和UDP服务器。按处理方式来分有循环服务器和并发服务器。1 循环服务器与并发服务器模型在网络程序里面,一般来说都是许多客户对应一个服务器,为了处理客户的请求,对服务端的程序就提出了特殊的要求。目前最常用的服务器模型有:·循环服务器:服务器在同一时刻只能响应一个客户端的请求·并发服务器:服务器在同一时刻可以
2014-12-23 11:08:37 605
转载 opengl坐标系
OPENGL坐标系可分为:世界坐标系和当前绘图坐标系。 世界坐标系:在OpenGL中,世界坐标系是以屏幕中心为原点(0, 0, 0),且是始终不变的。你面对 屏幕,你的右边是x正轴,上面是y正轴,屏幕指向你的为z正轴。长度单位这样来定: 窗口范围按此单位恰好是(-1,-1)到(1,1),即屏幕左下角坐标为(-1,-1),右上角
2014-12-18 13:49:55 384
转载 函数模板 和类模板
还是例子说话。函数模板: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 289
转载 拷贝构造函数
一. 什么是拷贝构造函数首先对于普通类型的对象来说,它们之间的复制是很简单的,例如:[c-sharp] view plaincopyint a = 100; int b = a; 而类对象与普通对象不同,类对象内部结构一般较为复杂,存在各种成员变量。下面看一个类对象拷贝的简单例子。
2014-11-19 20:10:46 348
转载 Explicit Constructors(显式构造函数)
按照默认规定,只有一个参数的构造函数也定义了一个隐式转换,将该构造函数对应数据类型的数据转换为该类对象,如下面所示:class String {String ( const char* p ); // 用C风格的字符串p作为初始化值//…}String s1 = “hello”; //OK 隐式转换,等价于String s1 = String(“hello”
2014-11-19 19:40:44 296
转载 函数的默认值+带默认参数的函数
我们可以赋予函数参数默认值。所谓默认值就是在调用时,可以不写某些参数的值,编译器会自动把默认值传递给调用语句中。默认值可以在声明或定义中设置;也可在声明或定义时都设置,都设置时要求默认值是相同的。 关于默认值要注意几点: 1.若在定义时而不是在声明时置默认值,那么函数定义一定要在函数的调用之前。因为声明时已经给编译器一个该函数的向导,所以只在定义时设默认值时,编译器只有检查到定
2014-11-11 11:30:32 1910
原创 虚函数&继承
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 420
原创 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 335
原创 hdu acm 1051 贪心,排序,dilworth定理,最长递减序列长度
dilworth 定理: 最小链划分数 = 最大反链的长度。于是先按照l 或者 w 排序, 再求
2014-10-21 21:57:55 504
原创 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 504
原创 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 380
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人