- 博客(23)
- 资源 (11)
- 收藏
- 关注
原创 C++学习笔记 -常成员_hawkol_新浪博客
常数据成员的值一旦初始化后不能改变。需要用关键字const来说明,其值初始化采用构造函数的成员初始化列表实现。由于初始化的常数据成员的值不能改变,因此可以大大加强程序的分健壮性,防止类中的数据被随意修改。同时使用常数据成员可以起到宏的作用,方便程序的维护。#includeusing namespace std;class Car{public:Car...
2016-11-29 12:01:21 68
原创 C++学习笔记 -静态成员_hawkol_新浪博客
静态数据成员:由多个对象数据共享,它不属于某个对象成员,而是属于所有对对象。在类中使用关键字static修饰的数据成员就是静态数据成员。使用静态数据成员可以节省内存,因为它是所有对象共享的。静态成员函数:若使用static修饰类中的成员函数,那么该函数就是静态成员函数。和静态数据成员类似,静态成员函数也是类的一部分,并不专属于某一个对象。应用实例:#include...
2016-11-22 17:03:11 64
原创 C++学习笔记 -拷贝构造函数雷区_hawkol_新浪博客
一个对象中含有动态申请的内存空间,如果用该对象初始化另一个对象(默认拷贝构造函数是一种浅拷贝,不会拷贝动态分配的内空间)两个对象共同使用一块内存区,当两个对象被销毁时,再次释放内存会出错。#includeusing namespace std;class car{public:car (int s,char *pn);~car();private:...
2016-11-13 17:13:07 69
原创 C++学习笔记 -拷贝构造函数方法的选择_hawkol_新浪博客
系统调用拷贝构造函数的情况:一个对象以传值的方式传入函数体。一个对象以值的传递方式从函数返回。一个对象用来初始化同类型的对角。创建拷贝构造函数的优势:1。阻止系统生成默认拷贝构造函数,因为在某些特殊情况下,使用默认拷贝构造函数会有意想不到的错误。2。采用自动拷贝构造函数可以提高代码执行效率,在拷贝构造函数内程序员可以有目地选择自制数据。调用拷...
2016-11-13 16:41:55 78
原创 C++学习笔记 -拷贝构造函数_hawkol_新浪博客
理解拷贝构造函数:拷贝构造函数的目的是使用已存在的同类型对象来初始化创建对象的构造函数。拷贝构造函数可以把已经创建对象的私有数据成员的值赋给创建对象,它实现了一个对象成员数据初始化另外一个对象的成员数据。默认构造函数格式:<类名>(const<类名>&<形参对对象名>);{//实现复制}如果没有定义拷贝函数及赋值函数...
2016-11-13 15:39:54 50
原创 C++学习笔记 -构造函数与析构函数_hawkol_新浪博客
对象是类的一个实体。对象通过构造函数进行初始化,代表了对象的出生,通过析构函数进行销毁,代表了对象的死亡。默认构造函数:构造函数可以实现在对象创建时初始化数据成员,在创建一个对象时系统会为该对象创建一个不带参数的构造函数,这个函数就叫默认构造函数。构造函数用来实现对类数据成员的初始化。构造函数必须与类名相同。<构造函数名>()//...
2016-11-13 11:49:01 48
原创 C++学习笔记 -class 和 struct 的区别_hawkol_新浪博客
在 c++中 class 和 struct是极其类似的,但两者也有区别,在实际编程时应用class,除非是涉及c语言实现的数据结构,因为在c语言中没有class,在c++中保留struct,是为了兼容c语言的目的。1.成员默认访问权限。struct 是public权限,class 是 private权限。2.两者都可以通过public,private,pro...
2016-11-10 14:02:46 78
原创 C++学习笔记 -类和对象操作实例_hawkol_新浪博客
# include using namespace std;//声明一个Car类class Car{public:void move();//声明类函数void stop()//类函数在声明部分实现{cout<<"carstopend"<<endl;}void setSpeed(short s);void setWe...
2016-11-10 13:53:17 55
原创 C++学习笔记 -类和对象_hawkol_新浪博客
程序设计方式:面向结构程序设计面向对象程序设计面向对象程序设计可以通过类将事物的属性(数据)和行为(函数)封装起来,利用这个类可以模拟自然世界事物的属性及行为,对象则是这个类的具体表示,每个对象可以有相同的特性,也可以具备不同的特性,这样模拟出的事物能更加符合现实要求。简单地说类其实也是一种数据类型,而且是一种复杂的数据类型。不同于一般的数据类型,该类型包含了不同...
2016-11-09 15:56:54 67
原创 C++学习笔记 -函数指针_hawkol_新浪博客
函数指针:简单地说就是指向函数的指针。指针可以指向一个数组,也可以指向一个一般数据类型的变量,还可以指向一个复合数据类型变量等。指针是一个指向内存区域的首地址。函数是由一系列指令组成的,在内存中占据一定的空间,指针指向这个区域,此时指针就叫做函数指针。函数指针定义:函数返回类型 (*指针变量名)(函数参数列表)注意以下两种指针形式:int (*pfun...
2016-11-08 15:38:00 56
原创 C++学习笔记 -函数参数传递_hawkol_新浪博客
C++一般有两种传递方式:一种是按值传递,另一种是按引用传递。结构体和共用体是按值传递。每个元素都会生成相应副本,再将副本传递给形参。对于这一点结构体和数组不一样,虽然数组本质上也是按值传递,但是数组传递的是一个元素的首地址,其它元素并没有传递到函数里。一,结构体实例:#includeusing namespacestd;struct Student{...
2016-11-08 09:09:35 67
原创 C++学习笔记 -函数存储类型_hawkol_新浪博客
在C++中经常接触的存储类型说明符有4种:auto,register,extern,static.利用这些说明符来修饰不同的函数存储类型及变量类型。函数的存储类型一般有两种:一种是外部函数,用extern来定义,一种是内部函数,用static来定义。外部函数定义格式:[extern]<数据类型><函数名>(<参数列表>)/...
2016-11-07 15:43:55 248
原创 C++学习笔记 -递归函数和内联函数详解_hawkol_新浪博客
一,递归函数:可以把解决的问题转换成新的问题,新的问题的解决方式和原来问题的解决方法类似,但新的问题的规模以原来的问题要小。并且有一个结束条件。#includeusing namespace std;int get_age(int n);//声明一个函数const int INTERVAL=4;void main(){int age =get_ag...
2016-11-07 14:40:22 476
原创 C++学习笔记 -结构体和共用体操作实例_hawkol_新浪博客
#includeusing namespacestd;union Diffmsg{int classnum;char pos[20];};//声明共用体struct Person{char cflg;char num[10];char name[10];char sex;Diffmsgmsg;//嵌套共用体};//声明结构体void m...
2016-11-07 10:29:55 91
原创 C++学习笔记 -使用函数编程_hawkol_新浪博客
函数函数模板:<返回类型><函数名>(参数列表){<函数体>}1.函数返回值 返回类型是指renturn返回值的类型。如果函数没有返回值,返回值应该是void(不可省略)。2.参数列表是向函数传递值或者获取数值。如果函数不需要参数,那么参数列表是空的,可以用void类型表示,但也可以省略。多个参数列表之间需要vo...
2016-11-07 10:26:21 76
原创 C++学习笔记 -结构体和共用体的区别_hawkol_新浪博客
结构体变量所占内存空间大小是各个成员所占内存空间大小之和,共用体变量所占内存空间大小等于成员中所占空间最大的值。#includeusing namespace std;#pragma pack(1)//算定义内存对齐方式structmy_struct{char pos[20];int grade;};unionmy_union{char pos...
2016-11-07 09:27:16 94 1
原创 C++学习笔记 -结构体的定义和使用_hawkol_新浪博客
#includeusing namespace std;structstudent_struct{char name[20];int num;char sex;unsigned age;};//声明结构体void main(void){struct student_structstudent1[3];//定义结构体数组、也可省略structf...
2016-11-04 15:55:00 74
原创 C++学习笔记 -引用和指针的区别_hawkol_新浪博客
#includeusing namespace std;void main(void){int i=10;int j=20;int &ref=i;int *pi=&i;cout<<"&i=:"<<&i<<endl;cout<<"&ref=:"<<&...
2016-11-04 09:47:23 48
原创 C++学习笔记 -Char与String操作_hawkol_新浪博客
#include《iostream》#include《string》using namespace std;char chara[8]="abcdefg";//字符个数必须小与数组,最后位\0char charb='a';//字节int intb='a';//a=97stringstra[8]={"aaa","bbbb","cccc","ddddd","...
2016-11-03 11:23:47 86
原创 C++学习笔记 -String操作实例_hawkol_新浪博客
#include《iostream》#include《string》#include《cctype》using namespace std;string a="AAAAAAAAAAbbbbbbbbbb1234567890!#*&+-\t";void main(){//stringcout<<a<<endl;cout...
2016-11-03 09:23:17 65
原创 C++学习笔记 -内存动态申请注意事项_hawkol_新浪博客
一、动态内存分配不一定成功:在内存使用前应判断指针是否为空。#includeusing namespace std;void main(void){double *pd=0;pd=new double[10];if (pd==0)//判断动态分配是否成功{cout<<"pd ERROR";//pd指向内存失败}else{cout...
2016-11-02 11:13:05 174
原创 C++学习笔记 -指针和数组_hawkol_新浪博客
指针数组,它的属性是数组;数组指针,它的属性是指针。一、指针数组:<类型>*<数组名>[数组大小]#includeusing namespace std;void main(void){//指针数组,它的属性是数组。定义 <类型>*<数组名>[数组大小] 如:int*pi[5];char*pn...
2016-11-01 15:20:28 88
这是之前做项目时收集的HTML网页特效集合,亲侧有效
2024-08-23
JAVA游戏开发-超炫贪吃蛇源码实现教程.doc
2019-08-29
文件读写操作
2015-12-31
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人