
C++ 基础
C++是C语言的继承,它既可以进行C语言的过程化程序设计,又可以进行以抽象数据类型为特点的基于对象的程序设计,还可以进行以继承和多态为特点的面向对象的程序设计。
钢铁男儿
敲代码路上,一步一个脚印!可关注"知识代码AI"!
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
C++ 数组与结构 编程练习
题目内容:回文测试:输入一个30个字符以内的字符串,判断是否位回文,如果是,则打印true;否则打印false;像“abc”这样的从左往右读与从右往左读一至就是回文。输入样式:ayzya输出样式1:true输入样例2ayzy输出样例2:false。原创 2024-11-13 21:43:40 · 385 阅读 · 0 评论 -
C++ 函数模板与模板函数
max代表了一类具有相同程序逻辑的函数,称为函数模板。由模板函数实例化出的函数称为模板函数。原创 2024-05-27 22:00:46 · 430 阅读 · 0 评论 -
C++ 多态性
构造函数不能定义为虚函数。而析构函数可以定义为虚函数。若析构函数为虚函数,那么当使用delete释放基类指针所指向的派生类对象时,先调用派生类的析构函数,再调用基类的析构函数。原创 2024-05-14 22:48:24 · 896 阅读 · 0 评论 -
C++ 派生类的引入与特性
继承:一旦指定了某种事物父代的本质特征,那么它的子代将会自动具有哪些性质。这就是一种朴素的可重用的概念。派生:而且子代可以拥有父代没有的特性,这是可扩充的概念。原创 2024-05-13 23:04:01 · 833 阅读 · 0 评论 -
C++ 指针 参数 静态 常 友元与组合概念
/在类外定义静态数据成员,在定义时给初值例子:静态数据成员的特性。原创 2024-05-12 22:43:37 · 927 阅读 · 0 评论 -
C++ 构造函数与析构函数
例:为Clock类添加构造函数。原创 2024-05-12 18:29:19 · 556 阅读 · 0 评论 -
C++ 抽象与封装
第一步:进行抽象;第二步:声明类;第三步:实现类;第四步:使用类;原创 2024-05-10 23:05:28 · 979 阅读 · 0 评论 -
C++ 引用
简单地说,引用就是给一个单元起一个别名。也就是说,引用与它所引用的变量共享存储单元。引用主要有以下三种用法:独立引用;作为函数参数;作为函数返回类型;原创 2024-05-10 21:02:18 · 403 阅读 · 0 评论 -
C++ 常量
常量是指在程序运行过程中,其值不能被改变的量。如:i=255;在程序中直接使用数值有两个问题:可读性差;可维护差;原创 2024-05-10 20:34:22 · 290 阅读 · 0 评论 -
C++ 内联函数
C++中的内联函数既具有宏定义的优点,又克服了宏定义的缺点。在函数名前加上"inline",即为内联函数。在编译时调用func的地方用函数体进行了替换,所以程序执行时会减少调用开销。原创 2024-05-10 20:04:33 · 356 阅读 · 0 评论 -
C++ 函数重载
两个以上的函数,具有相同的函数名,但是形参的个数或者类型不同,编译器会根据实参的类型机个数的最佳来自动调用哪一个函数。原创 2024-05-09 22:55:21 · 285 阅读 · 0 评论 -
C++ 动态内存管理
例如:动态内存和释放单个数据的存储区。原创 2024-05-09 22:38:03 · 271 阅读 · 0 评论 -
C++数据类型与表达式
各种类型的高低顺序如下所述;原创 2024-05-09 22:27:52 · 187 阅读 · 0 评论 -
C++ 基础 输入输出
系统中的预定义流对象cin和cout:输入流:cin处理标准输入,即键盘输入;输出流:cout处理标准输出,即屏幕输出;流:从某种IO设备上读入或写出的字符系列使用cin、cout这两个流对象时需要:#include。原创 2024-05-09 22:21:23 · 310 阅读 · 0 评论 -
C++变量的作用域与存储类型
指在源程序中定义变量的位置及其能被读写访问的范围分为局部变量(Local Variable)和全局变量(Global Variable)原创 2024-05-07 22:33:47 · 465 阅读 · 0 评论 -
C++ 函数与结构
原创 2024-05-07 21:23:29 · 133 阅读 · 0 评论 -
C++ 函数与指针
函数内部数据是地址需要传递给调用函数,返回的当然是指针了!当然,这个返回地址也可以通过函数参数返回!函数的参数是指针可以输出函数多个结果,返回值本身就是返回数据,什么时候需要返回指针呢?一般形式类型定义符 *指针型函数名(形参列表)函数体;"类型定义符"是指返回指针指向的数据类型。原创 2024-05-03 23:22:52 · 371 阅读 · 0 评论 -
C++ 函数与数组
例1 求数组各项的累加和例2 修改数组元素大于5的为01 用数组名作为函数参数时还应注意以下几点:1)形参数组和实参数组的类型必须一致,否则将引起错误。2)形参数组和实参数组的长度可以不相同,因为在调用时,只传送首地址而不检查形参数组的长度。当形参数组的长度与实参数组不一致时,虽不至于出现语法错误(编译能通过),但程序执行结果将与实际不符,这是应予以注意的。3)在函数形参列表中,允许不给出形参数组的长度,或用一个变量来表示数组元素的个数。4)多维数组也可以作为函数的参数。在函数定义时对形参数原创 2024-05-03 22:19:23 · 421 阅读 · 0 评论 -
C++ 函数 参数与返回值
一 参数与返回值回顾文件读数据功能文件读数据。原创 2024-05-03 22:02:06 · 296 阅读 · 0 评论 -
C++ 动态内存
malloc和free要配对使用,malloc在函数入口,free在函数出口使用malloc时要检查函数返回值,使用free函数后,将指针设置为NULL,不要把句柄变量的地址做为函数返回值返回。在程序运行期间,用动态内存分配函数来申请的内存都是从堆上分配的,动态内存的生存期由程序员自己来决定。在执行函数调用时,系统在栈上为函数内的句柄变量及形参分配内存,函数执行结束时,自动释放这些内存。在C中,NULL取值为0,常常用以表示指针不指向任何地方的一种状态。内存分配成功,但没有初始化即开始使用。原创 2024-05-03 09:31:54 · 426 阅读 · 0 评论 -
C++ 字符指针
一 字符数组原创 2024-04-12 23:23:27 · 197 阅读 · 0 评论 -
C++ 二重指针
如果在一个指针变量中存放的是另一个变量的指针的地址,称该指针为指向指针的指针,即二重指针。原创 2024-04-12 23:13:52 · 316 阅读 · 0 评论 -
C++ 指针与结构
③通过指向结构的指针和指向成员运算符(->);②通过指向结构的指针和间接运算符(*);① 通过结构变量名;原创 2024-04-05 09:58:35 · 292 阅读 · 0 评论 -
C++指针与二维数组
二维数组首地址是行地址,要用行指针指向,行指针加减1,就移动一行。行指针+i表示第i行的行地址,取*就转换为列地址,转为一维数组的处理。原创 2024-04-05 09:49:36 · 403 阅读 · 0 评论 -
C++ 指针与数组
如图所示,获取数组起始地址的方法有两种,其一为数组名,其二为通过数组的首元素地址。指针变量p是通过数组名获得指向数组a的第一个元素。通过数组首地址访问数组元素的方式可以有以下几种方式:①数组元素的直接访问,即下标变量方式,如a[1];②指针加偏移量类型的间接地址访问,如*(p+i);③数组名作地址值(指针值)的直接地址访问,如与a[i]的等价的语句为*(a+i).④将指针变量看作数组名以后得下标变量方式,如p[i];原创 2024-04-05 09:38:28 · 352 阅读 · 0 评论 -
C++ 指针
类型定义符 *指针变量名;先定义后使用int *ptr;char *name;float *pf;定义ptr,name,pf分别为指向整型、字符型和浮点型数据的指针。原创 2024-04-01 22:35:11 · 252 阅读 · 0 评论 -
C++ 数组 结构编程题
规律:第一个数和第二个数分别是1和1,从第三个数开始每个数是它前面两个数之和。对兔子 n <= 15。即求第 nFibonacci 数。从键盘输入学生的学号,分析其年级、学院、专业、班级、编号。假设所有的兔子都不死,问第 n 个月时有几。小兔子长到第三个月后每个月。然后,编程事项将时钟模拟显示屏幕上。有一对兔子,从出生后第。冒泡排序算法的流程图。原创 2024-03-31 22:26:07 · 437 阅读 · 0 评论 -
C++ 结构
结构类型定义的一般格式为①结构类型名不得与其它变量的名字相同;②结构成员名可以与其它变量的名字相同;③结构类型定义之后一定要跟一个分号;原创 2024-03-30 22:42:39 · 318 阅读 · 0 评论 -
C++ 数组
数组名:标识这组相同的数据的名字。数组元素:构成数组的每个数据项。一维数组的定义存储类型 数据类型 数组名[正整数]float score[10];2 数组的使用一维数组的使用数组下标:数组元素的索引数组下标(index)都是从0开始使用score[0]、score[1]、…、score[9]这样的形式访问每个元素下标即可是常量,也可以是整型表达式,允许快速随机访问,如:score[i]可以像使用普通变量一样使用他们。系统分配一块连续的存储空间,大小为数据类型大小*数组元素数量数组原创 2024-03-28 23:18:56 · 296 阅读 · 0 评论 -
C++ 控制语句(一)
程序的基本结构有三种:顺序结构、分支结构、循环结构大量的实际问题需要通过各种控制流程来解决。原创 2024-03-27 23:05:18 · 472 阅读 · 0 评论 -
C++ 输入与输出
输入输出函数被包含在库函数“stdio.h”中,使用这些函数时,要使用预处理命令 #include “stdio.h” 但printf和scanf可缺省。将一个字符输出在显示屏上,显示参数可以是字符变量、字符常量、字符ASCII码。按规定的输出格式,把输出项依次输出系统指定的缺省输出设备,通常为显示器。格式:getchar() 无参数,只能接收一个字符。字符输出函数-------putchar。字符输入函数------getchar。格式输出函数-----printf。格式输入函数-----scanf。原创 2024-03-25 23:25:37 · 285 阅读 · 0 评论 -
C++ 优先级与结合性
表达式有多种运算符混合使用时,求解表达式的值,首先要解决各种运算符的运算优先次序问题。即,优先级和结合性。优先级是指不同级别运算符之间的运算次序,先高后低,优先级共有15级。结合性是指在一个表达式中有多个优先级相同的运算符之间的运算次序。反之转换后的结果必然是错误的,具体结果与机器和实现方式有关。不同类型数据的运算结果,是两种类型种取值范围大的那种。例如:下面表达式的值取决于5种运算符的优先次序。若大类型的值在小类型能容纳的范围之内,则平安无事。取值范围小的类型赋值给取值范围大的类型是安全的。原创 2024-03-25 22:52:00 · 652 阅读 · 0 评论 -
C++ 基本运算
表达式是指各种运算符把常量、变量,函数等运算对象连接起来的具有实际意义并符合C语法规则的式子。赋值是指表达式的值赋给一个变量。关系和逻辑运算用于比较两个数间特定关系的一种运算。常用于C的控制结构中。特有的位运算功能,可以完成汇编语言的一些工程。算术运算符优先级高于算术赋值运算符。同样,逻辑真位非零,逻辑假为零。关系和逻辑构成复合的逻辑关系。<变量>=<表达式>;4、关系运输与逻辑运算。原创 2024-03-24 23:04:23 · 438 阅读 · 0 评论 -
C++ 纯虚函数和抽象类
在多态中,通常父类中虚函数的实现是毫无意义的,主要都是调用子类重写的内容。因此可以将虚函数改为纯虚函数。纯虚函数语法:virtual 返回值类型 函数名(参数列表) = 0;当类中有了纯虚函数,这个类也称为抽象类。抽象类特点:无法实例化对象;子类必须重写抽象类中的纯虚函数,否则也属于抽象类。#include <iostream>using namespace std;//纯虚函数和抽象类class Base{public: //纯虚函数 //只要有一原创 2022-01-27 21:55:58 · 271 阅读 · 0 评论 -
C++ 继承
1、继承继承是面向对象三大特性之一。有些类与类直接存在特殊的关系,例如下图中:我们发现,定义这些类时,下级别的成员除了拥有上一级的共性,还有自己的特性。这个时候我们就可以考虑利用继承的技术,减少重复代码。1.1 继承的基本语法例如我们看到很多网站中国,都有公共的头部,公共的底部,甚至公共的左侧列表,只有中心内容不容接下来我们分别利用普通写法和继承的写法来实现网页中的内容,看一下继承存在的意义以及好处。普通实现:#include <iostream>using namespace原创 2022-01-23 22:16:43 · 472 阅读 · 0 评论 -
C++ 运算符重载
1、运算符重载运算符重载概念:对已有的运算符重新进行定义,赋予其领一种功能,以适应不同的数据类型。1)、加号运算符重载作用:实现两个自定义数据类型相加的运算。#include <iostream>using namespace std;//加号运算符重载class Person{public: //成员函数重载+号 /* Person operator+(Person& p) { Person temp;原创 2021-11-14 21:56:28 · 252 阅读 · 0 评论 -
Python 程序基本格式
1、恰当的空格,缩进问题1)、逻辑行首的空白(空格和制表符)用来决定逻辑行的缩进层次,从而用来决定语句的分组。2)、语句从新行的第一列开始。3)、缩进风格统一。a、每个缩进层次使用 单个制表符或四个空格(IED会自动讲制表符设置成4个空格);b、Python用缩进而不是{}表示程序块;2、Python区分大小写3、注释1)、行注释每行注释前加#号,当解释器看到#,则忽略这一行#后面的内容2)、段注释使用三个连续单引号('''),当解释看到''',则会扫描到下一个"原创 2021-11-12 22:26:59 · 2551 阅读 · 0 评论 -
C++ 友元
生活中你的家有客厅(public)有你的卧室(private)客厅所有来的客人都可以进去,但是你的卧室是私有的,也就是说只有你能进去,但是呢,你也可以允许你的好闺蜜好基友进去。在程序里,有些私有属性也想让类外特殊的一些函数或者类进行访问,就需要用到友元的技术。友元的目的就是让一个函数或者类 访问另一个类中私有成员。友元的关键字为 friend友元的三中实现:1)、全局函数做友元;2)、类做友元;3)、成员函数做友元;#include <iostream>#原创 2021-11-12 21:38:45 · 488 阅读 · 0 评论 -
C++ const 修饰成员函数
常函数:1)、成员函数后加const后我们称为这个函数为常函数;2)、常函数内不可以修改成员属性;2)、成员属性什么时关键字mutable后,在常函数中依然可以修改;常对象:1)、声明对象前加const称该对象为常对象;2)、常对象只能调用常函数;#include <iostream>using namespace std;//常函数class Person{public: //this 指针的本质 是指针常量 指针的指向是不可以修改的 /原创 2021-11-12 20:21:38 · 1198 阅读 · 0 评论 -
空指针访问成员函数
C++中空指针也是可以调用成员函数的,但是也要注意有没有用到this指针。如果用到this指针,需要加以判断保证diam的健壮性。#include <iostream>using namespace std;//空指针调用成员函数class Person{ void showClassName() { cout << "this is Person class" << endl; } int m_Age;原创 2021-11-11 21:41:12 · 282 阅读 · 0 评论