
C++
梦想田园
用学习去充实自己,用实践去证明自己,用梦想去展现自己
展开
-
C++中单引号“字符串”的用法
今天在工作时看到一段略显奇怪的代码段,大概是这样的:switch (flag) { case 'ABCD': TODO break; case 'EFDG': ... break .... default:转载 2014-04-25 01:00:26 · 1232 阅读 · 0 评论 -
C++中堆栈,堆和栈的区别
堆和栈的区别一、预备知识—程序的内存分配一个由c/C++编译的程序占用的内存分为以下几个部分1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。2、堆区(heap) — 一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回收 。注意它与数据结构中的堆是两回事,分配方式倒是类似于链表,呵呵。3、全局区(静态转载 2014-04-25 01:08:24 · 686 阅读 · 0 评论 -
vc中重绘Listctl的网格线
看了一些关于列表控件网格线的文章,可能是觉得比较简单的缘故吧,写的很粗略。我觉得对这方面有疑问的,肯定是需要稍微详细点说的。所以我写下这篇文章,一方面做个总结,另一方面希望对需要的朋友有所帮助。 一、显示网格线 vc中添加列表控件后,如果需要让它显示网格线,做到两点即可:一是右击listctl控件,在属性-样式-查看中,设置为report(报告)属性;转载 2014-05-24 11:29:25 · 2163 阅读 · 1 评论 -
使用动态链接库DLL的方法
现在假设你的建立的DLL名是win32dll1.新建一个工程。将上述的三个文件:win32dll.lib,win32dll.dll,win32dll.h,拷贝到当前工程目录中。 在工程的头文件中,引入上述头文件和lib库。#include "win32dll.h" #pragma comment(lib,"win32dll.lib")2.其实还可以在设定路径的方法上进行转载 2014-12-31 10:18:34 · 484 阅读 · 0 评论 -
关于调用动/静态链接库的问题
一般说来,如果同一段代码,一个写成DLL,一个作为函数直接定义,则DLL调用肯定要慢一些。原因如下: 一个程序如果要使用DLL中的函数,则必须经过,如下步骤:1、将DLL文件装入内存,win32的方法是 :LoadLibrary(...);2、取得指定的函数的入口地址,方法好像是: GetProcessAddr(.....)3、通过函数指针,调用函数。 而直接在程序中定义函数,则没有原创 2014-12-31 09:50:02 · 516 阅读 · 0 评论 -
error C2027: use of undefined type 'A' see declaration of 'A'
#includeusing namespace std;class A;class B{public :B(A * a){a->c = 5;}};class A{public:int c;void set(){B b(this);cout<<c;}};void main(){A a;a.set();}/*error C2027:原创 2015-08-11 15:53:57 · 2494 阅读 · 0 评论 -
回调函数
调函数就是一个通过函数指针调用的函数。如果你把函数的指针(地址)作为参数传递给另一个函数,当这个指针被用来调用其所指向的函数时,我们就说这是回调函数。回调函数不是由该函数的实现方法直接调用,而是在特定的事件或条件发生时由另外的一方调用的,用于对该事件或条件进行响应。 回调函数实现了多态性原创 2015-07-31 11:32:40 · 355 阅读 · 0 评论 -
C++函数覆盖与重写
在c++中,函数覆盖可实现动态特性,而函数覆盖不可以原创 2015-07-31 11:29:01 · 656 阅读 · 0 评论 -
c语言string.h中常用的字符串操作函数
//根据指定字符切分字符串char *strtok(char *str1, char *str2);char input[26] = "I,am,a,boy";char *p;p = strtok(input, ",");while(p){ printf("%s\n", p); p = strtok(NULL, ",");}//字符串反转char *strr原创 2016-10-13 15:42:41 · 1450 阅读 · 0 评论