文章分类 -  c++

1
摘要:http://blog.163.com/linzhijia0612@126/blog/static/17180466420109352353740/不可以。因为非static方法是要与对象关联在一起的,必须创建一个对象后,才可以在该对象上进行方法调用,而static方法调用时不需要创建对象,可以直接... 阅读全文
posted @ 2014-05-15 15:39 六界剑仙 阅读(473) 评论(0) 推荐(0)
摘要:C++中值传递、指针传递、引用传递的总结 收藏1. 值传递:形参是实参的拷贝,改变形参的值并不会影响外部实参的值。从被调用函数的角度来说,值传递是单向的(实参->形参),参数的值只能传入,不能传出。当函数内部需要修改参数,并且不希望这个改变影响调用者时,采用值传递。void swap(int a,int b){ int temp; temp=a; a=b; b=temp; cout<<a<<’ ‘<<b<<’\n’;}int main(){ int x=1; int y=2; swap(x,y); cout<<x<< 阅读全文
posted @ 2013-02-28 22:30 六界剑仙 阅读(79) 评论(0) 推荐(0)
摘要:http://blog.csdn.net/hackbuteer1/article/details/74671391、int a=5,则 ++(a++)的值是()A、5 B、 6 C、7D、逻辑错误a++返回的是一个临时变量,这里是右值,不能再前面++了2、下面的代码输出什么?(取地址运算符比+运算符的优先级要高)[cpp]view plaincopyintmain(void){inta[5]={1,2,3,4,5};int*ptr=(int*)(&a+1);printf("%d%d",*(a+1),*(ptr-1));return0;}A、1 6 B、2 4C、2 阅读全文
posted @ 2013-02-20 17:51 六界剑仙 阅读(124) 评论(0) 推荐(0)
摘要:http://blog.csdn.net/hackbuteer1/article/details/7475622 C++编程语言是一款应用广泛,支持多种程序设计的计算机编程语言。我们今天就会为大家详细介绍其中C++多态性的一些基本知识,以方便大家在学习过程中对此能够有一个充分的掌握。 多态性可以简单地概括为“一个接口,多种方法”,程序在运行时才决定调用的函数,它是面向对象编程领域的核心概念。多态(polymorphisn),字面意思多种形状。 C++多态性是通过虚函数来实现的,虚函数允许子类重新定义成员函数,而子类重新定义父类的做法称为覆盖(override),或者称为重写。(这里我觉得要.. 阅读全文
posted @ 2013-02-20 17:36 六界剑仙 阅读(140) 评论(0) 推荐(0)
摘要:http://see.xidian.edu.cn/cpp/biancheng/view/91.html 阅读全文
posted @ 2013-02-20 16:32 六界剑仙 阅读(77) 评论(0) 推荐(0)
摘要:http://see.xidian.edu.cn/cpp/biancheng/view/91.html了解继承的概念之后,我们就来学习一下如何实现继承。私有和保护在第14章中我们说到,成员函数或成员数据可以是公有或者私有的。如果是公有的,那么它们可以被直接访问;如果是私有的,那么它们无法被直接访问。同时,我们还提到一个protected保留字,在没有使用继承的时候,它与private的效果是一样的,即无法被直接访问。如果使用了继承,我们就能体会到protected和private的差别。private(私有)和protected(保护)都能实现类的封装性。private能够对外部和子类保密,即 阅读全文
posted @ 2013-02-20 16:31 六界剑仙 阅读(1085) 评论(0) 推荐(0)
摘要:http://blog.csdn.net/yinwei520/article/details/6006054一般全局变量存放在数据区,局部变量存放在栈区,动态变量存放在堆区,函数代码放在代码区。---------------------------------------------------------------栈区是普通的栈数据结构,遵循LIFO后进先出的规则,局部变量安排在那里是ASM时就规定的,这样可以在一个函数结束后平衡堆栈,操作简单,效率高堆(动态区)在这里应当叫堆栈(不要和数据结构中的堆搞混)是程序在编译时产生的一块用于产生动态内存分配使用的块,操作比较栈要麻烦许多,在分配时 阅读全文
posted @ 2013-02-20 14:45 六界剑仙 阅读(529) 评论(0) 推荐(0)
摘要:浅拷贝就比如像引用类型,而深拷贝就比如值类型。浅拷贝是指源对象与拷贝对象共用一份实体,仅仅是引用的变量不同(名称不同)。对其中任何一个对象的改动都会影响另外一个对象。举个例子,一个人一开始叫张三,后来改名叫李四了,可是还是同一个人,不管是张三缺胳膊少腿还是李四缺胳膊少腿,都是这个人倒霉。深拷贝是指源对象与拷贝对象互相独立,其中任何一个对象的改动都不会对另外一个对象造成影响。举个例子,一个人名叫张三,后来用他克隆(假设法律允许)了另外一个人,叫李四,不管是张三缺胳膊少腿还是李四缺胳膊少腿都不会影响另外一个人。比较典型的就是Value(值)对象,如预定义类型Int32,Double,以及结构(st 阅读全文
posted @ 2013-02-19 10:34 六界剑仙 阅读(133) 评论(0) 推荐(0)
摘要:http://www.cnblogs.com/gaojun/archive/2010/09/10/1823354.html1.模板的概念。我们已经学过重载(Overloading),对重载函数而言,C++的检查机制能通过函数参数的不同及所属类的不同。正确的调用重载函数。例如,为求两个数的最大值,我们定义MAX()函数需要对不同的数据类型分别定义不同重载(Overload)版本。//函数1.int max(int x,inty);{return(x>y)?x:y ;}//函数2.float max(float x,floaty){return (x>y)? x:y ;}//函数3.d 阅读全文
posted @ 2013-01-29 16:13 六界剑仙 阅读(101) 评论(0) 推荐(0)
摘要:作为一个开发者/团队领导者,我经常会去招聘新的项目成员,有时候也帮助其他组的人来面试应聘者。作为应聘流程之一,我经常要求应聘者写一些代码,因此我检查过相当多的代码。在这里,我毫不回避地说了这句话。作为一个开发者/团队领导者,我经常会去招聘新的项目成员,有时候也帮助其他组的人来面试应聘者。作为应聘流程之一,我经常要求应聘者写一些代码,因此我检查过相当多的代码。在最近提交的C++代码中,我注意到一个趋势,在任何头文件中,我总是能看到以下代码:如果我用我们的代码检查系统(在实践中我十分推荐这个系统)来检验代码,以上那行代码经常会跟着一句评论“Timo不会这样写的”。他们说得很对,我确实不会这么写。那 阅读全文
posted @ 2013-01-14 15:23 六界剑仙 阅读(105) 评论(0) 推荐(0)
摘要:简单的移位和按位加:int r,g,b;int c; // TC 用 long int;// 如果次序是RRGGBBc = r << 16 | g << 8 | b;// 如果次序是BBGGRRc = b << 16 | g << 8 | r;---------------------------------例如:#include "stdio.h"int RGB(int r,int g,int b){return r << 16 | g << 8 | b;}void main(){int r,g,b, 阅读全文
posted @ 2012-12-26 17:43 六界剑仙 阅读(140) 评论(0) 推荐(0)
摘要:c语言中static 函数和普通函数的区别C程序一直由下列部分组成:1)正文段——CPU执行的机器指令部分;一个程序只有一个副本;只读,防止程序由于意外事故而修改自身指令;2)初始化数据段(数据段)——在程序中所有赋了初值的全局变量,存放在这里。3)非初始化数据段(bss段)——在程序中没有初始化的全局变量;内核将此段初始化为0。4)栈——增长方向:自顶向下增长;自动变量以及每次函数调用时所需要保存的信息(返回地址;环境信息)。5)堆——动态存储分。在全局变量之前加上关键字static,全局变量就被定义成为一个全局静态变量。1)内存中的位置:静态存储区(静态存储区在整个程序运行期间都存在)2) 阅读全文
posted @ 2012-12-24 15:52 六界剑仙 阅读(496) 评论(0) 推荐(0)
摘要:http://blog.csdn.net/pj81102/article/details/5836066C++实现方法:-------------------------------------------------------------------------------------------------#include <iostream>#include <string>#include <vector>using namespace std;void split(const string& src, const string& 阅读全文
posted @ 2012-09-07 14:04 六界剑仙 阅读(612) 评论(0) 推荐(0)
摘要:c++程序网站http://www.ok2002.com/cc/cc/s.asp?r=a1999113275160 char *strcpy(char *strDest, c o n st char *strSrc);//第二个参数设置为常量 是不想在函数中间 让其发生改变 { assert((strDest!=NULL) && (strSrc !=NULL)); // 这句是断言 判断不该出现的错误 //如果出现作物 立即在这里停止 char *address = strDest;//创建一个地址指针 用于返回 while( (*strDest++ = * str... 阅读全文
posted @ 2012-09-07 13:29 六界剑仙 阅读(146) 评论(0) 推荐(0)
摘要:http://blog.csdn.net/starlee/article/details/619827我们知道,用C++开发的时候,用来做基类的类的析构函数一般都是虚函数。可是,为什么要这样做呢?下面用一个小例子来说明:有下面的两个类:class ClxBase{public:ClxBase() {};virtual ~ClxBase() {};virtual void DoSomething() { cout << "Do something in class ClxBase!" << endl; };};class ClxDerived : pu 阅读全文
posted @ 2012-09-07 13:27 六界剑仙 阅读(93) 评论(0) 推荐(0)
摘要:http://www.cnblogs.com/Laokong-ServiceStation/archive/2011/04/19/2020402.html引用http://www.cppblog.com/life02/archive/2011/03/07/96085.html在这个帖子的基础上稍微添加修改了点内容。String 类的原型如下class String{ public:String(co n st char *str=NULL); //构造函数String(co n st String &other); //拷贝构造函数~String(void); //析构函数String 阅读全文
posted @ 2012-09-07 13:26 六界剑仙 阅读(112) 评论(0) 推荐(0)
摘要:0.在用指针的时候,所有的人的都要事先建立一个概念: 指针就是一种数据类型,它和int bool char等没有两样,int 存放的是整形数据,char 存放的字符, 指针存放的是某段内存的地址。 整形声明的时候用int,指针类型声明用int *, 双指针声明用int ** ,指针中的int 是指针所指内存的类型。 说指针指向哪个变量,其实就是说指针的值是该变量的内存地址。1.new/delete 对象在创建的同时要自动执行构造函数,对象在消亡之前要自动执行析构函数malloc/free不行需要手写。这是因为new内置了sizeof、类型转换和类型安全检查功能。对于非内部数据类型的对象而言,n 阅读全文
posted @ 2012-09-07 13:20 六界剑仙 阅读(102) 评论(0) 推荐(0)
摘要:http://www.cnblogs.com/hnrainll/archive/2011/04/29/2032868.html已知strcpy函数的原型是 char *strcpy(char *strDest, c o n st char *strSrc);其中strDest是目的字符串,strSrc是源字符串。(1)不调用C++/C的字符串库函数,请编写函数strcpy char *strcpy(char *strDest, co n st char *strSrc);{assert((strDest!=NULL) && (strSrc !=NULL)); // 2分char 阅读全文
posted @ 2012-09-07 13:18 六界剑仙 阅读(99) 评论(0) 推荐(0)
摘要:http://man.chinaunix.net/develop/c&c++/c/c.htm 阅读全文
posted @ 2012-09-07 13:16 六界剑仙 阅读(185) 评论(0) 推荐(0)
摘要:分享+(轉貼) c++指针|指针入门 (C/C++) (C)http://www.cnblogs.com/oomusou/archive/2007/08/10/850077.html什么是指针? 其实指针就像是其它变量一样,所不同的是一般的变量包含的是实际的真实的数据,而指针是一个指示器,它告诉程序在内存的哪块区域可以找到数据。这是一个非常重要的概念,有很多程序和算法都是围绕指针而设计的,如链表。开始学习 如何定义一个指针呢?就像你定义一个其它变量一样,只不过你要在指针名字前加上一个星号。我们来看一个例子: 下面这个程序定义了两个指针,它们都是指向整型数据。int* pNumberOne... 阅读全文
posted @ 2012-09-07 13:10 六界剑仙 阅读(110) 评论(0) 推荐(0)

1