C++
文章平均质量分 62
0-0bread
这个作者很懒,什么都没留下…
展开
-
关于C++中的多态
多态——在我写这篇文章之前,我一直认为多态指的是“运行时多态”,就是在基类中借助virtual关键字实现的。好,看到这里,忘记上面那句话。1. 多态是如何实现绑定的多态的绑定可以分为运行时多态和编译时多态。编译时的多态性是通过重载来实现的。对于非虚的成员来说,系统在编译时,根据传递的参数决定实现何种操作。(有些人写的是根据参数列表和返回值,但返回值在C++中式可以忽略的,因为其原创 2014-03-11 15:43:13 · 818 阅读 · 0 评论 -
动态绑定的多态的实现原理
嘿嘿,上篇写了多态的一些理解,马不停蹄又去补了多态的实现原理——虚表。我觉得源栗子(原例子)写的简单明了,就直接转过来了,大家一起学习学习。原文点击打开链接,我稍微精简了一下1. 用virtual关键字声明的函数叫做虚函数,虚函数肯定是类的成员函数。2. 存在虚函数的类都有一个一维的虚函数表叫做虚表。类的对象有一个指向虚表开始的虚指针。虚表是和类对应的,虚表指针是和对象对应的。3.转载 2014-03-11 16:50:49 · 2156 阅读 · 0 评论 -
siciliy1564HOUSING
DP,n个人入住,每间房最少住5个人,问有几种入住的方法。跟硬币题差不多,主要是注意初始的地方,一开始输出总是比标准答案小,想了好久#include#include#include#includeusing namespace std;vector v;typedef long long LL;LL f[101][101];//f[i][j]总共i个人,由前j种每房间可能入住的原创 2013-08-26 11:54:45 · 608 阅读 · 0 评论 -
int,long,long long,unsigned int,unsigned long,unsigned long long范围
unsigned int 0~4294967295 int 2147483648~2147483647 unsigned long 0~4294967295long 2147483648~2147483647long long的最大值:9223372036854775807long long的最小值:-9223372036854775808unsigne转载 2013-08-25 17:27:19 · 1710 阅读 · 0 评论 -
最大子数组和及最小子数组和
写这篇文章是为了埋葬一部分我的愚蠢……最大数组和:即求一个数组中连续子数组和的最大值silu原创 2014-03-07 14:58:01 · 1605 阅读 · 1 评论 -
C++排序总结
顺序如下:1.各排序算法实现2.各排序算法比较1.1选择排序把选择排序写在前面,因为这是我上学以来学的第一个排序算法思路:在第i次处理中选出从i到len-1的最小值,将其与当前i位置上的元素进行交换#include#include#includeusing namespace std;templatevoid selectSort(T *num,int le原创 2014-03-29 10:46:42 · 894 阅读 · 0 评论 -
strlen和sizeof区别
1、strlen是函数。sizeof是操作符,返回类型是size_t,在头文件中的typedef为unsigned int2、sizeof可以用类型/函数做参数(当然变量也可以),但strlen只能用char *做参数,且必须是以'\0'结尾的。3、数组做sizeof的参数不退化(为指针),而传递给strlen就退化为指针4、sizeof在编译阶段就已经计算好了,因此他可以用来定义数组原创 2014-03-22 10:31:17 · 678 阅读 · 0 评论 -
C++中内存分配
在C++中,内存分成5个区:堆、栈、自由存储区、全局/静态存储区和常量存储区。 栈,在执行函数时,函数内局部变量的存储单元都可以在栈上创建,函数执行结束时这些存储单元自动被释放。栈内存分配运算内置于处理器的指令集中,效率很高,但是分配的内存容量有限。 堆,就是那些由new分配的内存块,他们的分配与释放由程序员控制,一般一个new就要对应一个delete。如果程序员没有释放转载 2014-03-16 23:58:46 · 493 阅读 · 0 评论