- 博客(13)
- 资源 (1)
- 收藏
- 关注
原创 类和对象 5、静态成员变量、成员函数
关键字 static 可以用于说明一个类的成员,静态成员提供了一个同类对象的共享机制:把一个类的成员说明为 static 时,这个类无论有多少个对象被创建,这些对象共享这个 static 成员静态成员局部于类,它不是对象成员 静态成员函数数冠以关键字static:静态成员函数提供不依赖于类数...
2019-09-17 16:05:12 175 1
原创 类和对象 4对象的动态建立和释放
在软件开发过程中,常常需要动态地分配和撤销内存空间,例如对动态链表中结点的插入与删除。在C语言中是利用库函数malloc和free来分配和撤销内存空间的。C++提供了较简便而功能较强的运算符new和delete来取代malloc和free函数。虽然为了与C语言兼容,C++仍保留malloc和free函数,但建议用户不用malloc和free函数,而用new和delete运算符。语法对比如下...
2019-09-17 16:00:57 147
原创 类和对象 3、对象初始化列表
对象初始化列表出现原因1.必须这样做:如果我们有一个类成员,它本身是一个类或者是一个结构,而且这个成员它只有一个带参数的构造函数,没有默认构造函数。这时要对这个类成员进行初始化,就必须调用这个类成员的带参数的构造函数,如果没有初始化列表,那么他将无法完成第一步,就会报错。2、类成员中若有const修饰,必须在对象初始化的时候,给const int m 赋值当类成员中含有一...
2019-09-17 15:54:37 273
原创 类和对象 2、浅拷贝和深拷贝
浅拷贝问题抛出和分析#define _CRT_SECURE_NO_WARNINGS #include <iostream>using namespace std;//class Name{public: Name(const char *myp) { m_len = strlen(myp); m_p =(char *) malloc(m_len +...
2019-09-17 15:33:19 69
原创 类和对象 1、构造函数和析构函数的分类和引用
设计构造函数和析构函数的原因面向对象的思想是从生活中来,手机、车出厂时,是一样的。生活中存在的对象都是被初始化后才上市的;初始状态是对象普遍存在的一个状态的普通方案:为每个类都提供一个public的initialize函数;对象创建后立即调用initialize函数进行初始化。优缺点分析1)initialize只是一个普通的函数,必须显示的调用2)一旦由于失误的原因...
2019-09-17 14:36:55 209
翻译 5、面向对象编程
一个类(Class)能够创建一种新的类型(Type),其中对象(Object)就是类的实例(Instance)。可以这样来类比:你可以拥有类型 int 的变量,也就是说存储整数的变量是 int 类的实例(对象)。(即使是整数也会被视为对象( int 类的对象)。这不同于 C++ 与 Java(1.5版之前),在它们那儿整数是原始内置类型。)1、从属于对象或类的变量叫作字段,字段有两种类型——它...
2019-01-21 10:45:13 160
翻译 3、模块
编写模块有很多种方法,其中最简单的一种便是创建一个包含函数与变量、以 .py 为后缀的文件。另一种方法是使用撰写 Python 解释器本身的本地语言来编写模块。举例来说,你可以使用 C语言来撰写 Python 模块,并且在编译后,你可以通过标准 Python 解释器在你的 Python 代码中使用它们。输入:import sysprint('The command line arg...
2018-06-28 14:43:25 95
翻译 2、函数
函数通过关键字 def 来定义,这一关键字后跟一个函数的标识符名称,再跟一对圆括号,其中可以包括一些变量的名称,再以冒号结尾,结束这一行。def say_hello():1、局部变量当你在一个函数的定义中声明变量时,它们不会以任何方式与身处函数之外但具有相同名称的变量产生关系,也就是说,这些变量名只存在于函数这一局部(Local)。这被称为变量的作用域(Scope)。所有变量的作用域...
2018-06-28 09:45:03 89
翻译 1 基础
1、字符串(Python 中没有单独的 char 数据类型) 、字符串是不可变的单引号可以使用单引号来指定字符串,例如 '将我这样框进来' 或 'Quote me on this' 。所有引号内的空间,诸如空格与制表符,都将按原样保留。双引号被双引号包括的字符串和被单引号括起的字符串其工作机制完全相同。单引号括起的字符串和双引号括起的字符串是一样的——它们不存在任何区别。...
2018-06-27 22:02:30 396
原创 C++对C的函数扩展-函数参数相关扩展
1、默认参数C++中可以在函数声明时为参数提供一个默认值1、当函数调用时没有指定这个参数的值,编译器会自动用默认值代替,若填写参数则使用你填写的void prinfa(int x = 3){ cout << "x=" << x << endl;}2、在默认参数规则 ,如果默认参数出现,那么右边的都必须有默认参数...
2018-01-09 22:16:14 218
原创 C++对C的函数扩展 --inline内联函数
1 inline内联函数1、C++中的const常量可以替代宏常数定义,如:const int A = 3; #define A 32、C++中是否有解决方案替代宏代码片段呢?(替代宏代码片段就可以避免宏的副作用!)C++中推荐使用内联函数替代宏代码片段C++中使用inline关键字声明内联函数说明1:inline必须和函数体的实现,写在一块说明2...
2018-01-09 15:23:36 580
原创 常引用(const引用)
普通引用int a = 10;int& b = a;b可以修改a常引用用const修饰就是常引用,常引用初始化有两种情况1、 用变量 初始化 常引用{int x1 = 30;const int& y1 = x1;//用x1变量 初始化 常引用,不能用y修改x} 2 、用 字面量 初始化 常引用const int& ...
2018-01-09 14:19:13 1143
原创 普通引用
普通引用1、引用的语法:Type& name = var;2、属于C++的语法范畴,属于C++编译器对C的扩展,不能用c语言的语法取思考3、普通引用要初始化4、引用作为函数参数声明时不进行初始化复杂数据类型的引用//复杂数据类型的引用struct teacher{ char name[63]; int age;};void ...
2018-01-04 22:09:04 236
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人