
C/C++
文章平均质量分 66
wanjie518
这个作者很懒,什么都没留下…
展开
-
继承和派生
<br /><br />1. 继承和派生一般性概念 <br />在一个已经存在的类的基础上建立一个新的类,新类从已有的类那里获取某些已有的特征,这种现象称为类的继承。从另一个角度说,从已有的类产生一个新的类,称为类的派生.01class CBase02{03public:04 int m_iBase;05 int BaseFunc()06 {07 return m_iBase;08 }09};10 11原创 2010-12-07 10:20:00 · 559 阅读 · 0 评论 -
Qt事件和信号的区别
<br />问题:<br /> 什么时候用事件,什么时候用信号呢?是不是不同的线程间用事件,信号不能用在线程间?<br />解答:<br /> 仔细来看,事件与信号其实并无多大差别,从我们对其需求上来说,都只要能注册事件或信号响应函数,在事件或信号产生时能够被通知到即可。但有一项区别在于,事件处理函数的返回值是有意义的,我们要根据这个返回值来确定是否还要继续事件的处理,比如在QT中,事件处理函数如果返回true,则这个事件处理已完成,QApplication会接着处理下一个事件,而原创 2010-12-10 09:14:00 · 7488 阅读 · 0 评论 -
Qt信号和槽
<br />信号槽机制是Qt编程的基础。通过信号槽,能够使Qt各组件在不知道对方的情形下能够相互通讯。这就将类之间的关系做了最大程度的解耦。 槽函数和普通的C++成员函数没有很大的区别。它们也可以使virtual的;可以被重写;可以使public、protected或者private的;可以由其它的C++函数调用;参数可以是任何类型的。如果要说区别,那就是,槽函数可以和一个信号相连接,当这个信号发生时,它可以被自动调用。 connect()语句的原型类似于:connect(send转载 2010-12-10 09:13:00 · 869 阅读 · 0 评论 -
堆栈的详解
<br />一、预备知识—程序的内存分配 <br />一个由c/C++编译的程序占用的内存分为以下几个部分 <br />1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。 <br />2、堆区(heap) — 一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回收 。注意它与数据结构中的堆是两回事,分配方式倒是类似于链表,呵呵。 <br />3、全局区(静态区)(static)—,全局变量和静态变量的存储是放在一块的,初始化的全局变原创 2010-12-29 17:43:00 · 469 阅读 · 0 评论 -
C语言关键字volatile
<br /><br />C语言关键字——volatile。在程序员面试宝典中提到“关键字volatile的面试例题是考查嵌入式编程”,中间有一段解析:<br />回答不出这个问题的人是不会被雇佣的。我认为这是区分C程序员和嵌入式系统程序员的最基本的问题。搞嵌入式的家伙们经常同硬件、中断、RTOS等等打交道,所有这些都要求用到volatile变量。不懂得volatile的内容将会带来灾难。 假设被面试者正确地回答了这是问题(嗯,怀疑是否会是这样),我将稍微深究一下,看一下这家伙是不是直正懂得volatile完原创 2011-01-17 19:47:00 · 614 阅读 · 0 评论 -
关于malloc和free的讨论
来自bc-cn C语言论坛一、malloc()和free()的基本概念以及基本用法:1、函数原型及说明:void *malloc(long NumBytes):该函数分配了NumBytes个字节,并返回了指向这块内存的指针。如果分配失败,则返回一个空指针(NULL)。关于分配失败的原因,应该有多种,比如说空间不足就是一种。void free(void *FirstByte): 该函转载 2011-06-24 10:49:00 · 802 阅读 · 0 评论