![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
c++
yydrewdrew
这个作者很懒,什么都没留下…
展开
-
error LNK2001错误
在创建MFC项目时, 不使用MFC AppWizard向导, 如果没有设置好项目参数, 就会在编译时产生很多连接错误, 如error LNK2001错误, 典型的错误提示有:libcmtd.lib(crt0.obj) : error LNK2001: unresolved external symbol _mainLIBCD.lib(wincrt0.obj) : error LNK2001: u转载 2007-03-27 21:52:00 · 1354 阅读 · 0 评论 -
用GDB调试程序(1)
GDB概述 ————GDB是GNU开源组织发布的一个强大的UNIX下的程序调试工具。或许,各位比较喜欢那种图 形界面方式的,像VC、BCB等IDE的调试,但如果你是在UNIX平台下做软件,你会发现GDB这个调试工具有比VC、BCB的图形化调试器更强大的功 能。所谓“寸有所长,尺有所短”就是这个道理。一般来说,GDB主要帮忙你完成下面四个方面的功能: 1、启动你的程序,可转载 2007-06-12 09:47:00 · 912 阅读 · 0 评论 -
用GDB调试程序(3)
四、输出格式 一般来说,GDB会根据变量的类型输出变量的值。但你也可以自定义GDB的输出的格式。例如,你想输出一个整数的十六进制,或是二进制来查看这个整型变量的中的位的情况。要做到这样,你可以使用GDB的数据显示格式: x 按十六进制格式显示变量。 d 按十进制格式显示变量。 u 按十六进制格式显示无符号整型。 o转载 2007-06-12 10:04:00 · 620 阅读 · 0 评论 -
用GDB调试程序(2)
四、维护停止点上面说了如何设置程序的停止点,GDB中的停止点也就是上述的三类。在GDB中,如果你觉得已定义好的停止点没有用了,你可以使用delete、clear、disable、enable这几个命令来进行维护。 clear 清除所有的已定义的停止点。 clear clear 清除所有设置在函数上的停止点。转载 2007-06-12 09:55:00 · 769 阅读 · 0 评论 -
强制数据类型转换
其实,关于强制类型转换的问题,很多书都讨论过,写的最详细的是C++ 之父的《C++ 的设计和演化》。最好的解决方法就是不要使用C风格的强制类型转换,而是使用标准C++的类型转换符:static_cast, dynamic_cast。标准C++中有四个类型转换符:static_cast、dynamic_cast、reinterpret_cast、和const_cast。下面对它们一一进行介绍。转载 2007-04-27 23:58:00 · 2031 阅读 · 0 评论 -
c++学习杂记(4)
函数把相关的语句组合在一起,并赋予一个名字,这种形式的组合即函数(类似于脚本,只不过是命令而已),通常也叫例程或者过程。函数不允许嵌套定义,c++中函数声明就是函数原型,可以没有参数名字,当编译时编译器把调用函数与函数原型比较,链接时要调用函数定义,如果声明与调用不一致,那么编译会出问题,如果调用与定义不一致,那么会造成链接错误。被调用函数返回时有可能会自动的隐式转换(数据类型相容的话),如原创 2007-04-24 23:56:00 · 635 阅读 · 0 评论 -
c++学习杂记(5)
原创 2007-04-25 17:02:00 · 712 阅读 · 0 评论 -
关于new、delete和堆的一些理解
关于new、delete和堆的一些理解先看以下的两个简单的程序:第一: //////////Visula C++ 6.0环境 #includevoid main(){int a=3;int *p=new int;p=&a;coutdelete p; /////////有错误}第二://////////Visual C++ 6.0环境 #includevoid main()转载 2007-04-11 15:17:00 · 718 阅读 · 0 评论 -
c++学习杂记(2)
类和结构: class和struct的比较:struct是简化数据逻辑结构的设计,本质上属于自定义的数据结构;class是将数据与方法封装,让行为和数据一致,本质上是一种程序设计方法,折射了一种编程思想。struct不能包括函数,而class可以,在struct里成员默认属性(存储控制)是private而struct默认属性是public。c的struct和c++的struct的区别:在原创 2007-04-07 17:02:00 · 860 阅读 · 0 评论 -
c++学习杂记(1)
最近在学校没事,看了看下c++,由于本人又懒又笨,c++一直没学懂过,写下来作为备忘,菜鸟一天进步一点点也好,如果有错欢迎大家提出来。类的constructor和继承 :子类不能继承父类的constructor,只能调用父类的constructor,如果子类没有声明constructor,当构造子类的实例时,将执行其默认构造函数,该默认构造函数将会首先调用父类的默认构造函数,若父类没有默原创 2007-04-06 21:50:00 · 1189 阅读 · 0 评论 -
overload和override的区别
1、Overload没有关系,Override有点关系(范围小的可以被范围大的Override)。 2、Overload返回值类型不同不能作为不同的两个函数,Override应该完全一样的返回类型。 overload: public a(){} public a(int a){] 在一个类中有同名的方法,但是方法带有不同的参数 Override: public class a{ public转载 2007-04-03 12:49:00 · 1271 阅读 · 1 评论 -
C++中extern “C”含义深层探索
1.引言 C++语言的创建初衷是“a better C”,但是这并不意味着C++中类似C语言的全局变量和函数所采用的编译和连接方式与C语言完全相同。作为一种欲与C兼容的语言,C++保留了一部分过程式语言的特点(被世人称为“不彻底地面向对象”),因而它可以定义不属于任何类的全局变量和函数。但是,C++毕竟是一种面向对象的程序设计语言,为了支持函数的重载,C++对全局函数的处理方式转载 2007-04-03 13:07:00 · 986 阅读 · 1 评论 -
introduction to algorithms 菜鸟笔记 vector
//author:yydrewdrew#define ERROR -1#define ALLOC_STEP 5 template class vector{public: explicit vector(); explicit vector(const T &t,size_t num); explicit vector(const T *p,size_t num); voi原创 2008-07-24 20:00:00 · 524 阅读 · 0 评论