c/c++技术
龙猫_1
这个作者很懒,什么都没留下…
展开
-
【转】孙鑫VC视频教程笔记之第十四课“基于TCP和UDP的Socket编程”
<br />在OSI的各层所使用的协议: <br />1.应用层:telnet,FTP,HTTP,DNS,SMTP,POP3<br />2.传输层:TCP,UDP<br /> TCP:面向连接的可靠的传输协议,通信前建立三次握手,握手成功后才能通信,对数据准确性要求较高的场合使用,如从网上载的安装文件,不能缺少任何信息<br /> UDP:是无连接的,不可靠的传输协议,不需要建立连接,也没有重传和确认的机制,在实时性要求较高,但对数据准确度要求不是很高的场合使用,如视频会议,在线观看电影转载 2011-03-16 14:58:00 · 463 阅读 · 0 评论 -
【转】fgets(fgetc)和fputs、fread和fwrite、fscanf和fprintf的总结
一.字符串读写函数fgets和fputs读字符串函数fgets函数的功能是从指定的文件中读一个字符串到字符数组中,函数调用的形式为: fgets(字符数组名,n,文件指针); 其中的n是一个正整数。表示从文件中读出的字符串不超过 n-1个字符。在读入的最后一个字符后加上串结束标志/0。例如:fgets(str,n,fp);的意义是从fp所指的文件中读出n-1个字符送入 字符数组str中。转载 2011-06-29 15:25:00 · 1416 阅读 · 0 评论 -
【转】虚表
C++ 中的虚函数的作用主要是实现了多态的机制。关于多态,简而言之就是用父类型别的指针指向其子类的实例,然后通过父类的指针调用实际子类的成员函数。这种技 术可以让父类的指针有“多种形态”,这是一种泛型技术。所谓泛型技术,说白了就是试图使用不变的代码来实现可变的算法。比如:模板技术,RTTI技术,虚 函数技术,要么是试图做到在编译时决议,要么试图做到运行时决议。 关于虚函数的使用方法,我在这转载 2011-06-16 09:42:00 · 433 阅读 · 1 评论 -
【转】VC 多线程编程
一、问题的提出编写一个耗时的单线程程序: 新建一个基于对话框的应用程序SingleThread,在主对话框IDD_SINGLETHREAD_DIALOG添加一个按钮,ID为IDC_SLEEP_SIX_SECOND,标题为“延时6秒”,添加按钮的响应函数,代码如下: void CSingleThreadDlg::OnSleepSixSecond() { Sleep(6000转载 2011-06-07 20:06:00 · 322 阅读 · 0 评论 -
【转】栈和堆的区别以及内存管理
1.1内存分配方面:堆:一般由程序员分配释放,若程序员不释放,程序结束时可能由OS回收 。注意它与数据结构中的堆是两回事,分配方式是类似于链表。可能用到的关键字如下:new、malloc、delete、free等等。栈:由编译器(Compiler)自动分配释放,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。1.2申请方式方面:堆:需要程序员自己申请,并指明大转载 2011-06-07 17:44:00 · 727 阅读 · 0 评论 -
【转】含指针变量的类需重新声明拷贝构造函数和赋值操作符
C++编译器会为每个类自动生成一个默认的构造函数、析构函数、赋值函数、拷贝构造函数,这当然是在你没有为你的类声明这些函数的时候。这些默认的功能函数在为你提供方便的时候,也会给你带来麻烦。例如:class string {public:string(const char *value);~string();... // 没有拷贝构造转载 2011-06-07 16:45:00 · 566 阅读 · 0 评论 -
【转】extern "C" 详解
<br />C++语言的创建初衷是“a better C”,但是这并不意味着C++中类似C语言的全局变量和函数所采用的编译和连接方式与C语言完全相同。作为一种欲与C兼容的语言,C++保留了一部分过程 式语言的特点(被世人称为“不彻底地面向对象”),因而它可以定义不属于任何类的全局变量和函数。但是,C++毕竟是一种面向对象的程序设计语言,为了支 持函数的重载,C++对全局函数的处理方式与C有明显的不同。 <br />2.从标准头文件说起<br />某企业曾经给出如下的一道面试题:为什么标准头文件都有类似以下的转载 2011-05-27 16:23:00 · 224 阅读 · 0 评论 -
【转】C++学习笔记——静态绑定与动态绑定
<br />静态绑定与动态绑定 <br /> <br /> <br />静态绑定:编译时绑定,通过对象调用<br />动态绑定:运行时绑定,通过地址实现<br /> <br />C++的多态性<br /> <br /> 静态多态性:函数多态性——函数重载<br /> 模板多态转载 2011-05-27 15:49:00 · 408 阅读 · 0 评论 -
【转】写时拷贝技术
<br />1、概念<br /><br /> <br />Scott Meyers在《More Effective C++》 中举了个例子,不知你是否还记得?在你还在上学的时候,你的父母要你不要看电视,而去复习功课,于是你把自己关在房间里,做出一副正在复习功课的样子,其 实你在干着别的诸如给班上的某位女生写情书之类的事,而一旦你的父母出来在你房间要检查你是否在复习时,你才真正捡起课本看书。这就是“拖延战术”,直到 你非要做的时候才去做。<br /><br />当然,这种事情在现实生活中时往往会出事,但其在编转载 2011-05-28 19:59:00 · 325 阅读 · 0 评论 -
【转】传值与传地址的区别
传值, <br />是把实参的值赋值给行参 <br />那么对行参的修改,不会影响实参的值 <br /><br />传地址 <br />是传值的一种特殊方式,只是他传递的是地址,不是普通的如int <br />那么传地址以后,实参和行参都指向同一个对象<br /><br />传引用 <br />真正的以地址的方式传递参数 <br />传递以后,行参和实参都是同一个对象,只是他们名字不同而已 <br />对行参的修改将影响实参的值----------------------------------------转载 2011-05-14 15:21:00 · 507 阅读 · 0 评论 -
【转】VC++的DLL应用(含Demo演示)
<br />VC++的DLL应用(含Demo演示)<br />作者:一点一滴的Beerhttp://beer.cnblogs.com/<br /> 在大学大一的时候学的是C,然后后来大二的时候专业又开了C++这个课程,然后再后来自己又自学了一点VC++,大三的时候也试着编写过一个MFC的最简单的窗口程序。到大四的时候,自己又做了一个GIS的项目,是用C#.NET来编写的,然后发现C#上手好容易,而且还大部分语法规则都沿用了C,C++的习惯,于是觉得C++实在是没有一点优势可言啊。但这个暑假的实习经转载 2011-03-16 14:44:00 · 282 阅读 · 0 评论 -
【转】c++类大小(存在虚函数以及static变量时)
虽然很难找到一本不讨论多态性的C++书籍或杂志,但是,大多数这类讨论使多态性和C++虚函数的使用看起来很难。我打算在这篇文章中通过从几个方面和结合一些例子使读者理解在C++中的虚函数实现技术。说明一点,写这篇文章只是想和大家交流学习经验因为本人学识浅薄,难免有一些错误和不足,希望大家批评和指正,在此深表感谢!在类中,如果什么都没有,则类占用1个字节,一旦类中有其他的占用空间成员,则这1个转载 2011-06-16 16:01:00 · 2171 阅读 · 0 评论