![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C/C++
lying_sun
这个作者很懒,什么都没留下…
展开
-
C/C++指针用法最终大总结篇
指针是一个特殊的变量,它里面存储的数值被解释成为内存里的一个地址。 要搞清一个指针需要搞清指针的四方面的内容:指针的类型,指针所指向的 类型,指针的值或者叫指针所指向的内存区,还有指针本身所占据的内存区。让我们分别说明。 先声明几个指针放着做例子: 例一: (1)int*ptr; (2)char*ptr; (3)int**ptr; (4)int(*ptr)[转载 2013-04-22 14:30:59 · 638 阅读 · 0 评论 -
C++中的虚函数的作用
虚函数联系到多态,多态联系到继承。所以本文中都是在继承层次上做文章。没了继承,什么都没得谈。下面是对C++的虚函数这玩意儿的理解。一 、 什么是虚函数简单地说,那些被virtual关键字修饰的成员函数,就是虚函数。虚函数的作用,用专业术语来解释就是实现多态性(Polymorphism),多态性是将接口与实现进行分离;用形象的语言来解释就是实现以共同的方法,但因个体差异而采用转载 2013-04-22 20:30:56 · 563 阅读 · 0 评论 -
C++ 虚函数表解析
原文地址:http://blog.csdn.net/haoel/article/details/1948051/C++中的虚函数的作用主要是实现了多态的机制。关于多态,简而言之就是用父类型别的指针指向其子类的实例,然后通过父类的指针调用实际子类的成员函数。这种技术可以让父类的指针有“多种形态”,这是一种泛型技术。所谓泛型技术,说白了就是试图使用不变的代码来实现可变的算法。比如:模板技术,RTT转载 2013-04-23 20:28:13 · 345 阅读 · 0 评论 -
C++内存管理详解
1、内存分配方式 内存分配方式有三种: (1)从静态存储区域分配。内存在程序编译的时候就已经分配好,这块内存在程序的整个运行期间都存在。例如全局变量,static变量。 (2)在栈上创建。在执行函数时,函数内局部变量的存储单元都可以在栈上创建,函数执行结束时这些存储单元自动被释放。栈内存分配运算内置于处理器的指令集中,效率很高,但是分配的内存容量有限。 (3转载 2013-04-23 18:33:06 · 326 阅读 · 0 评论 -
C/C++中的__FILE__, __LINE__,#line
一、__FILE__用以指示本行语句所在源文件的文件名 #include using namespace std; int main() { cout<<__FILE__<<endl; return 0; } 输出:D:\project\aa\main.cpp 二、__LINE__用以指示本行语句在源文件原创 2013-04-24 15:33:05 · 1211 阅读 · 0 评论 -
sizeof 与 strlen
Sizeof与Strlen的区别与联系一、sizeof sizeof(...)是运算符,在头文件中typedef为unsigned int,其值在编译时即计算好了,参数可以是数组、指针、类型、对象、函数等。 它的功能是:获得保证能容纳实现所建立的最大对象的字节大小。 由于在编译时计算,因此sizeof不能用来返回动态分配的内存空间的大小。实际上,用sizeof转载 2013-04-16 19:33:11 · 320 阅读 · 0 评论 -
代码优化的各种排序算法
直接插入排序第一层循环从i=1开始,因为插入算法中把数组的第一个元素a[0]作为第一个有序的数组,每次的插入都是基于这个数组。第二层循环开始对数组内的元素开始比较,例如当i=4时,j=3,此时数组为{2,3,6,1,5},我们需要把元素1插入到有序列{2,3,6}中,第一次循环将元素1与6互换,直到j>=0 并且 a[j]>a[j+1],跳出循环。#includeusin原创 2013-05-21 14:59:27 · 409 阅读 · 0 评论 -
链表基础
链表基础 #includeusing namespace std;class Node{public: int data;public: Node* next; Node() { data=0; next=NULL; }};int main(){ Node* pHead; Node* pRear; Node* pNe原创 2013-05-22 19:16:11 · 364 阅读 · 0 评论