![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C++
虎皮猫大人王
这个作者很懒,什么都没留下…
展开
-
windows 控制台下运行cl命令
使用之前打开控制台(CTRL+R>cmd);键入cl回车;如果出现如下提示:'cl' 不是内部或外部命令,也不是可运行的程序或批处理文件。则说明VS没有安装或者环境变量设置不正确,可以按照如下步骤设置:1. 确保已经安装VS,并在控制台 中键入set 检查是否有类似如下格式的环境变量VSXXCOMNTOOLSVS90COMNTOOLS=D:\Program Files原创 2012-02-14 10:16:34 · 3000 阅读 · 0 评论 -
c++ 函数后面 const 作用
c++ 函数前面和后面 使用const 的作用,前面使用const 表示返回值为const后面加 const表示函数不可以修改class的成员请看这两个函数const int getValue();int getValue2() const;1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 /* * FunctionConst.h转载 2013-12-31 16:11:14 · 996 阅读 · 0 评论 -
面向对象的三个基本特征是:封装、继承、多态
封装封装最好理解了。封装是面向对象的特征之一,是对象和类概念的主要特性。封装,也就是把客观事物封装成抽象的类,并且类可以把自己的数据和方法只让可信的类或者对象操作,对不可信的进行信息隐藏。继承面向对象编程 (OOP) 语言的一个主要功能就是“继承”。继承是指这样一种能力:它可以使用现有类的所有功能,并在无需重新编写原来的类的情况下对这些功能进行扩展。通过继承创建的新类称为“子类转载 2013-12-10 18:16:26 · 781 阅读 · 0 评论 -
new/delete和malloc/free的区别
还是先说说区别吧: 1. new/delete是C++里才有的,而new/delete与malloc/free一个显著的区别在于,new是建造一个对象,并调用对象的构造函数来初始化对象,其实在所有的new操作过程中,总是分为两步的:第一步是申请内存,第二步则是调用构造函数初始化对象。同样,在调用delete的时候,需要先调用析构函数,然后在销毁堆内存。 2. new/delet转载 2013-12-10 18:16:54 · 646 阅读 · 0 评论 -
#ifdef __cplusplus 倒底是什么意思?
时常在cpp的代码之中看到这样的代码: #ifdef __cplusplus extern "C" { #endif //一段代码 #ifdef __cplusplus } #endif 这样的代码到底是什么意思呢?首先,__cplusplus是cpp中的自定义宏,那么定义了这个宏的话表示这是一段cpp的代码,也就是说,上面的代码的含义是:如果这是一段cpp的代转载 2012-03-28 15:31:36 · 501 阅读 · 0 评论 -
C++编程点滴:C++运算符重载
C++中预定义的运算符的操作对象只能是基本数据类型,实际上,对于很多用户自定义类型,也需要有类似的运算操作。例如: class complex { public: complex(double r=0.0,double I=0.0){real=r;imag=I;} void display(); private: double real; dou转载 2012-03-05 19:01:40 · 1220 阅读 · 2 评论 -
C++中有哪些运算符不能重载?
大部分的操作符是可以被重载的,例外的只有“.”、“::”、“?:”和“sizeof”。没有什么非禁止operator?:重载的理由,只不过没有必要而已。另外,expr1?expr2:expr3的重载函数无法保证expr2和expr3中只有一个被执行。而“sizeof”无法被重载是因为不少内部操作,比如指针加法,都依赖于它,例如:X a[10];X* p = &a[3];X* q转载 2012-03-05 19:02:28 · 851 阅读 · 0 评论 -
memcpy strcpy strlen strcmp函数记录
如果你面试过,相信你明白这是什么意思.呵呵,1,memcpy函数void * memcpy (void *destaddr, void const *srcaddr, size_t len){ char *dest = destaddr; char const *src = srcaddr; while (len-- > 0) *dest++ = *src+原创 2012-02-20 14:48:34 · 450 阅读 · 0 评论 -
C++学习篇(一)
最近在学习C++,我以为有C的基础,C++学起至少不会太吃力.结果真是不看不知道.总结一句话:C++是一门基础语言.如果你明白什么是基础语言的话,相信你会理解我想表达的意思.与C类似,做为一门基础语言,有自己的一套执行,管理,设计,算法的方式.就像学会C之后,你可以做很多与C有关的开发工作,比如linux驱动,应用之类的.而学会C++你就会很多与C++相关的驱动开发,比如说原创 2012-02-26 12:16:19 · 498 阅读 · 0 评论 -
C语言中strcpy,strcmp,strlen,strcat函数原型
1、Strcat函数原型如下:char *strcat(char *strDest, const char *strScr) //将源字符串加const,表明其为输入参数{ char * address = strDest; //该语句若放在assert之后,编译出错 assert((strDest != NULL) && (strS原创 2012-02-20 14:46:25 · 530 阅读 · 0 评论 -
C与C++的简洁即是美
在C或者C++中,代码有一种简洁就是美的观点。举例说明:*dest++ = *source++;这一句可以这么写:*dest = *source;++dest;++source;虽然下面这句方式也可以实现,但是却要使用三句。因此第一种方式体现一种简洁就是美的概念。此用法是while循环内的赋值操作的一种常见用法。比如:char* strcpy(cha原创 2012-02-20 09:58:02 · 690 阅读 · 0 评论 -
自定义实现字符串处理函数 strlen strcmp strcpy strncpy strcat strncat strchr strstr
/****************************************************************************** * author : kangquan@scut2008 * * blog : http://blog.csdn.net/kangquan2008 * * discription: 自定义实现字符串处理函原创 2012-02-20 14:47:23 · 796 阅读 · 0 评论 -
含有可变形参的函数
在写程序时,有时候无法列举出传递给函数的所有实参的类型和数目, 可以使用省略符形参.省略符暂停了类型检查机制.它们的出现告知编译器,当调用函数时,可以有0或者多个实参,而实参的类未知.省略符有下列两种形式:void foo(parm_list, ....);void foo(...);第一种形式为特定数目的形参提供了声明.在这种情况下,当函数调用时,对于与显示声明的形参相对应的原创 2012-02-21 16:06:10 · 555 阅读 · 0 评论 -
Android C++层的内存回收机制
目录(?)[-]关于C Layer的内存回收机制RefBase类创建sp和wp对象关于promote用法1关于C++ Layer的内存回收机制Android C++层的内存收回主要是通过三个类来实现,分别是RefBase,sp,wp;SP和WP是两个智能指针模板类,sp是strong pointer,wp则是weak pointer,亦我们常说的强引用和弱引转载 2014-01-09 15:55:57 · 1259 阅读 · 0 评论