- 博客(11)
- 收藏
- 关注
原创 C++11新特性
C++98中一般数组和结构体用{}进行初始化,而C++11之后想统一初始化方式,于是试图实现一切对象都可以用{}进行初始化,{}初始化也叫列表初始化。C++98C++11统一初始化语法仅支持=,()新增{}统一列表初始化局部变量初始化不初始化,赋随机值空{}自动初始化置0/空类型转换检查允许隐式窄转换禁止隐式窄转换,更安全无参对象定义是函数声明明确创建对象委托构造函数不支持,构造代码冗余支持,构造函数逻辑复用只能用数组,重载函数。
2026-06-06 20:52:53
328
原创 类和对象(c++)
在 C++ 中,类(class)和对象(object)是面向对象编程的核心概念。类是抽象的数据类型,它定义了对象的属性和行为;对象是类的具体实例。class Datepublic:Date(int year = 1, int month = 1, int day = 1)//构造函数_day = day;int _month;int _day;这是一个日期类的写法,里面的访问限定符的位置不分先后,位置随意。
2025-07-20 20:19:03
984
原创 图书管理系统(JAVA)
先输入要添加书籍的name,再用循环历遍图书架数组,如果重复便返回菜单,反之输入该书籍的作者,价格,类型,并添加入图书架数组中,让现有书籍数加一。先定义使用者,重写构造方法,并定义一个menu菜单方法,因为菜单方法后续要在子类中重写,所以用abstract修饰,并把user也修饰为抽象类,输入要删除书籍的name,历遍数组,如果找到了,便让后续书籍位置向前加一,现有书籍数减一,如果没找到便输出“他们两个可以说是一模一样,只是因为管理员的特权多,所以menu方法多写了两个,第三行的。
2025-03-09 12:16:46
3347
1
原创 JAVA中的类与对象及封装,继承,多态,访问限定符,接口
这四种访问限定符的访问权限由大到小依次为: public > protected > 缺省 > private。合理使用访问限定符可以提高代码的可维护性、可扩展性和安全性,实现良好的封装和信息隐藏。接口可以作为一种类型来使用,不同的类实现同一个接口,可以根据对象的实际类型来调用不同的实现方法,实现多态性。接口定义了一组相关方法的集合,用于规范类的行为,使不同的类遵循相同的标准。接口可以降低模块之间的耦合度,使得代码更加灵活、可维护和可扩展。
2025-03-01 20:58:08
794
原创 计算器(可实现包含+、-、*、和(、)等运算符的运算)
int main()int n = 0;gets(ch);gets(ch2);i+=4)i++;= '-'))}elsei++;= '-'))}else= '-'))i += 4)i++;= '-'))elsei++;= '-'))else= '-'))i < 1000;i++)n = 1;}else= 0)n = 1;return 0;
2025-01-03 09:45:12
351
原创 学生管理系统(思路答疑)
首先要设立一个变量x来表示要添加的人数,然后进入循环来一个一个的添加学生信息,当然在我们使用学生管理系统时有一种情况无法添加信息,即当学生的学号重复时。首先要修改一个学生的信息要输入他的姓名,但问题随之而来:如果文件中储存的是小写英文字母,而你修改信息时输入的是大写字母那能找到吗?主要用strcmp函数来比较输入的学号与文件中有的学号是否重复,然后用flag来判断是否要循环判断如果flag为0,则结束判断,为1,则重新输入判断。主要思路是让后面的学生替换前一位的学生便可以达到效果了。
2024-12-01 14:19:33
395
原创 简易计算器(可连续计算)
这个程序有一定的缺陷,比如6*2-3/3+1这个式子,它输出的结果 为14,但把顺序换一下输入6*2+3/3-1,这答案便是12,因为在除完之后sum便直接加上了3/3的结果,并不会处理乘和除之间的运算符,因此这个程序是一个不成熟的计算器,除了这种情况以外其他运算基本没问题,如果有人有其他修改想法,欢迎私聊。为了实现连续运算可以运用数组,分别将运算数字与运算符号放在两个不同的数组中 ,因为符号是char类型的,而数字是int类型的,因此要用到getchar函数和atoi函数。最后输出sum便可以了。
2024-11-05 22:17:07
688
原创 扫雷游戏简易版(代码纯享)
void FindMine(char mine[ROWS][COLS],char show[ROWS][COLS], int row, int col)//排雷。int GetMineCount(char mine[ROWS][COLS], int x, int y)//统计周围雷的数目。default:printf("*****输入错误,请重新输入*****\n");if (show[x][y] == '*')//防止重复排查。case 0:printf("*****游戏结束*****\n");
2024-10-27 15:22:49
1479
原创 简易扫雷游戏(编译过程)
当然为了让玩家分辨出那一部分是排雷的棋盘,便要对棋盘进行初始化,让排雷棋盘变成‘*’,但问题也由此出现,在玩家玩时如何知道那里是被排过的呢。于是便可以想到创建两个大小一样的棋盘,让 一个初始化为‘*’,表示未被排过;首先扫雷游戏要有一个棋盘,便要用到二维数组,但有一个问题,如果棋盘要创建一个9*9的,那玩家该如何判断要排查的位置的坐标呢,于是便可以建立一个稍大一点的棋盘,在上面标出坐标。这样棋盘便初始化完成了,但要想让玩家看到,便要将它打印下来,便可创建一个打印棋盘的函数。
2024-10-27 15:17:26
815
原创 分支与循环语句
如果细心可以发现嵌套的if被一个大括号包裹,这就牵扯到悬空else的问题,if语句只能连接一个最近的语句,而else则连接最近的if语句,这就导致了如果没有那个大括号,语句就会变成如下图所示的运行形式。for和while在实现循环的过程中都有初始化,判断和调整三个部分,但for循环的比较集中,便于代码的调整与修改,而while循环则与之截然不同,因此for循环是一种较优的选择。当使用||时,如果左边的条件为真,则不会继续判断右边的条件,即出现短路现象。:逻辑取反运算符,用来改变单个表达式的真假。
2024-10-20 11:58:53
312
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅