自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

wangdada___的博客

主是java与单片机

  • 博客(90)
  • 资源 (7)
  • 收藏
  • 关注

原创 C++学习第26天 对象的初始化和清理、构造函数和析构函数

1、构造函数和析构函数对象的初始化和清理也是两个非常重要的安全问题,一个对象或者变量没有初始状态,对其使用后果是未知。同样的使用完一个对象或变量,没有及时清理,也会造成一定的安全问题。c++利用了**构造函数**和**析构函数**解决上述问题,这两个函数将会被编译器自动调用,完成对象初始化和清理工作。对象的初始化和清理工作是编译器强制要我们做的事情,因此如果**我们不提供构造和析构函数,编译器会提供。编译器提供的构造函数和析构函数是空实现。1、构造函数:主要作用在于创建对象时为对象的成员属性

2022-05-23 07:11:56 112

原创 C++学习第25天 成员属性为私有和立方体类

1、成员属性设置为私有优点1:将所有成员属性设置为私有,可以自己控制读写权限优点2:对于写权限,我们可以检测数据的有效性class Person {public: //姓名设置可读可写 void setName(string name) { m_Name = name; } string getName() { return m_Name; } //获取年龄 int getAge() {...

2022-05-23 07:00:08 122

原创 C++学习第24天 封装的访问权限

类在设计时,可以把属性和行为放在不同的权限下,加以控制访问权限有三种:1. public 公共权限 2. protected 保护权限3. private 私有权限//三种权限//公共权限 public 类内可以访问 类外可以访问//保护权限 protected 类内可以访问 类外不可以访问//私有权限 private 类内可以访问 类外不可以访问class Person{ //姓名 公共权限public: stri...

2022-05-21 14:11:40 213

原创 C++学习第23天封装的实例学生和教师

设计一个学生类,属性有姓名和学号,可以给姓名和学号赋值,可以显示学生的姓名和学号//学生类class Student {public: void setName(string name) { m_name = name; } void setID(int id) { m_id = id; } void showStudent() { cout << "name:" << m_name << " ID:" << m_id &lt

2022-05-19 09:23:17 132

原创 C++学习 第22天 封装及其圆的周长实例

1、封装的意义封装的意义:将属性和行为作为一个整体,表现生活中的事物将属性和行为加以权限控制封装意义一:​ 在设计类的时候,属性和行为写在一起,表现事物语法:class 类名{ 访问权限: 属性 / 行为 };2、实例设计一个圆类,求圆的周长const double PI = 3.14;//1、封装的意义//将属性和行为作为一个整体,用来表现生活中的事物//封装一个圆类,求圆的周长//class代表设计一个类,后面跟着的是类名class Circle{.

2022-05-18 08:39:14 94

原创 C++学习 第二十一天 函数重载

1、函数重载的概述作用:函数名可以相同,提高复用性函数重载满足条件:同一个作用域下函数名称相同函数参数类型不同或者个数不同或者顺序不同注意: 函数的返回值不可以作为函数重载的条件//函数重载需要函数都在同一个作用域下void func(){ cout << "func 的调用!" << endl;}void func(int a){ cout << "func (int a) 的调用!" << endl;}void.

2022-05-18 08:35:01 45

原创 C++学习第二十天 函数默认参数和占位参数

1、函数默认参数语法:返回值类型 函数名 (参数= 默认值){}int func(int a, int b = 10, int c = 10) { return a + b + c;}1. 如果某个位置参数有默认值,那么从这个位置往后,从左向右,必须都要有默认值2. 如果函数声明有默认值,函数实现的时候就不能有默认参数int func2(int a = 10, int b = 10);int func2(int a, int b) { return a + ...

2022-05-16 09:38:46 327

原创 C++学习第十九天 引用的本质和常量引用

1、引用的本质本质:引用的本质在c++内部实现是一个指针常量。例如://发现是引用,转换为 int* const ref = &a;void func(int& ref){ ref = 100; // ref是引用,转换为*ref = 100}int main(){ int a = 10; //自动转换为 int* const ref = &a; 指针常量是指针指向不可改,也说明为什么引用不可更改 int& ref =...

2022-05-14 13:28:50 83

原创 C++学习第十八天 引用做函数参数和返回值

1、引用做函数的参数作用:函数传参时,可以利用引用的技术让形参修饰实参优点:可以简化指针修改实参//1. 值传递void mySwap01(int a, int b) { int temp = a; a = b; b = temp;}//2. 地址传递void mySwap02(int* a, int* b) { int temp = *a; *a = *b; *b = temp;}//3. 引用传递void mySwap03(int& a, int&am

2022-05-13 10:47:57 93

原创 C++学习 第十七天 引用的基本使用和注意事项

1、引用的基本使用作用: 给变量起别名语法:数据类型 &别名 = 原名例如:int main() { int a = 10; int &b = a; cout << "a = " << a << endl; cout << "b = " << b << endl; b = 100; cout << "a = " << a << endl; cou

2022-05-12 10:12:39 171

原创 C++学习第十六天 new操作符

C++中利用==new==操作符在堆区开辟数据​ 堆区开辟的数据,由程序员手动开辟,手动释放,释放利用操作符 ==delete==​ 语法:` new 数据类型`​ 利用new创建的数据,会返回该数据对应的类型的指针...

2022-05-11 10:47:35 114

原创 C++学习 第十五天 栈区和堆区

栈区:​ 由编译器自动分配释放, 存放函数的参数值,局部变量等​ 注意事项:不要返回局部变量的地址,栈区开辟的数据由编译器自动释放

2022-05-10 10:44:44 168

原创 C++ 学习第十四天 内存分区模型

C++程序在执行时,将内存大方向划分为4个区域:- 代码区:存放函数体的二进制代码,由操作系统进行管理的- 全局区:存放全局变量和静态变量以及常量- 栈区:由编译器自动分配释放, 存放函数的参数值,局部变量等- 堆区:由程序员分配和释放,若程序员不释放,程序结束时由操作系统回收内存四区意义如下:不同区域存放的数据,赋予不同的生命周期, 给我们更大的灵活编程### 1.1 程序运行前​ 在程序编译后,生成了exe可执行程序,**未执行该程序前**分为两个区域​ 代码区:​ 存

2022-05-09 10:37:58 107

原创 C++学习第十三天 结构体案例

设计一个英雄的结构体,包括成员姓名,年龄,性别;创建结构体数组,数组中存放5名英雄。通过冒泡排序的算法,将数组中的英雄按照年龄进行升序排序,最终打印排序后的结果。

2022-05-07 14:22:42 48

原创 C++学习 第十二天 结构体应用案例

案例描述:学校正在做毕设项目,每名老师带领5个学生,总共有3名老师,需求如下设计学生和老师的结构体,其中在老师的结构体中,有老师姓名和一个存放5名学生的数组作为成员学生的成员有姓名、考试分数,创建数组存放3名老师,通过函数给每个老师及所带的学生赋值最终打印出老师数据以及老师所带的学生数据。...

2022-05-06 14:14:45 52

原创 C++学习 第十一天 结构体指针和嵌套结构体,结构体做函数参数

作用:通过指针访问结构体中的成员

2022-05-05 09:27:24 713

原创 C++ 学习 第十天 结构体和结构体数组

1、结构体的结构struct 结构体名 { 结构体成员列表 };struct 结构体名 变量名struct 结构体名 变量名 = { 成员1值 , 成员2值...}定义结构体时顺便创建变量例如:struct student{ //成员列表 string name; //姓名 int age; //年龄 int score; //分数}stu3; //结构体变量创建方式3 int main() { //结构体变量创建方式1 struct stu.

2022-05-04 10:53:43 69

转载 C++ 中的rand()函数的用法

C++中rand() 函数的用法1、rand()不需要参数,它会返回一个从0到最大随机数的任意整数,最大随机数的大小通常是固定的一个大整数。2、如果你要产生0~99这100个整数中的一个随机整数,可以表达为:int num = rand() % 100; 这样,num的值就是一个0~99中的一个随机数了。3、如果要产生1~100,则是这样:int num = rand() % 100 + 1; 4、总结来说,可以表示为:int num = rand() % n +a; ...

2022-05-03 21:12:26 416

原创 C++ 学习 第九天 指针

1. const修饰指针 --- 常量指针,指针指向的内容不能改,指向的地址可以改。const int *p=&a;2. const修饰常量 --- 指针常量,指针指向的内容能改,指向的地址不可以改。int *const p=&a;3. const即修饰指针,又修饰常量,指针指向的内容不能改,指向的地址不可以改。 const int *const p =&a;int main() { int a = 10; int b = 10; //...

2022-05-03 11:17:47 809

原创 C++ 学习第八天 一维数组实战

一维数组名称的用途:1. 可以统计整个数组在内存中的长度2. 可以获取数组在内存中的首地址注意:数组名是常量,不可以赋值总结1:直接打印数组名,可以查看数组所占内存的首地址总结2:对数组名进行sizeof,可以获取整个数组占内存空间的大小数组中元素的个数=sizeof(数组)/sizeof(数组[0]);在一个数组中记录了五只小猪的体重,如:int arr[5] = {300,350,200,400,250};找出并打印最重的大猪体重。#include<iostream

2022-05-02 13:55:03 694

原创 C++ 乘法表的编程

乘法表的特点是列数*行数=结果,列数小于等于当前的行数#include<iostream>using namespace std;int main(){ //乘法表的特点是列数*行数=结果,列数小于等于当前行数 for (int i = 1; i <= 9;i++)//列 { for (int j = 0; j <= i;j++)//行 { cout << i<<"*"<<j<<"="<<

2022-05-01 10:01:19 600

原创 c++ 学习第七天 水仙花数

水仙花数是指一个3位数,它的每个位上的数字的3次幂之和等于它本身#include<iostream>using namespace std;int main(){ //1、先找出所有的三位数字,最小的是100,最大的是999 //2、打印出水仙花数 int num = 100; int ge = 0; //个位 int shi = 0; //十位 int bai= 0; //百位 do { ge = num % 10; shi = num / 10.

2022-05-01 09:29:05 504

原创 C++ 学习第六天 一周知识点小结

学习C++已经一周了,今天做一个小结。1、代码的注释写一篇好的代码,不光要有好的编程思想,更要有清楚的代码的注释因为不仅自己要看得懂也要别人看的清楚明白,便于自己或其他程序员程序员阅读代码。**单行注释**:// 描述信息,通常放在一行代码的上方,或者一条语句的末尾,对该行代码说明。**多行注释**: /* 描述信息 */,通常放在一段代码的上方,对该段代码做整体说明,快捷键:ctrl+f+c。(编译器在编译代码时,会忽略注释的内容)2、变量**变量的作用**:给一段指定的内存空间起名,

2022-04-30 15:48:06 287

转载 C++ String类常用方法

String类的常用发法有很多比如说1、string(const char *s) :将 string 对象初始化为 s 指向的字符串string str("hello");2、string(size_type n,char c) :创建一个包含 n 个元素的 string 对象,其中每个元素都被初始化为字符 cstring str(10, 'a');3、string(const string &str) :将一个 string 对象初始化为 string 对象 str(复制构造函数

2022-04-29 11:16:02 454

原创 C++ 学习 第五天 实战演练

题目:这个程序将向用户提出一个"Y/N"i问题,然后把用户输入的值赋值给answer变量。要求:-针对用户输入'Y'或y'和'N'或n'进行过滤;

2022-04-29 10:42:34 284

原创 C++ 学习第四天 数据变量的类型

为什么要规定数据类型?这是因为C++规定在创建一个变量或者常量时,必须要指定出相应的数据类型,否则无法给变量分配内存。1、整型整型:int ,其中正兴的四则运算的结果还是整型。2、浮点型浮点型包括float(单精度)、double(双精度)两种。例子:int main() { float f1 = 3.14f; double d1 = 3.14; cout << f1 << endl; cout <&...

2022-04-28 14:59:51 581

原创 C++入门 第三天 文件常用操作模式

下面结出几种常见的打开模式:ios::in --打开一个可读取文件ios::out --打开一个可写入文件ios::binary --以二进制的形式打开一个文件ios::app --写入的所有数据将被加到文件的末尾ios:trunk --删除文件原来已存在的内容ios::nocreate --如果要打开的文件并不存在,那么以此参数调用open 函数将无法进行。ios::noreplece --如果要打开的文件已存在,试图用open 函数打开时将返回一个错误。下面是一个实例:#i

2022-04-27 13:48:59 129

原创 C++ 学习第二天 求和函数的程序编写和cout.width()函数的使用

题目是这样的:要求︰编写一个程序,要求用户输入一串整数和任意数目的空格,这些整数位于同一行中,但允许出现在该行中的任何位置,当用户按下键盘上的“Enter”键时,数据输入结束,程序自动对所有的整数进行求和并打印出结果。代码如下:#include<iostream>using namespace std;int main(){ int sum = 0; cout << "请输入一串整数和任意空格数目:"; int i;// >> 是重载

2022-04-27 11:28:54 1166

原创 C++入门 第一天 Hello Word书写以及一些基本变量的解释

今天是我第一天学习C++,简单的写个Hello Word的代码(用的是VS2019版本)。首先,现附上程序:#include<iostream>using namespace std;int main(){ cout << "hello word" << endl; system("pause"); return 0;}ostream:我的理解就是和C语言一样都是函数库。在C92标准中,引入库是写成iostream。h的样子,但是在C99的

2022-04-27 09:59:45 202

原创 自定义视图

a、如何实现1、自定义一个实现View接口的类,添加@Component注解,将其放入SpringIOC容器,如下所示:package com.jd.view;import java.util.Map;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServlet...

2020-04-19 14:14:09 132

原创 Springmvc ContextLoaderListener监听器

ContextLoaderListener监听器对org.springframework.web.servlet.DispatcherServlet的配置除了上例方式外,还可以用下面方式:<?xml version="1.0" encoding="UTF-8"?>...省略<web-app>标签... <display-name>cassini&l...

2020-04-12 17:30:40 128

原创 拦截器

为什么将堆内存SpringMVC使用拦截器对请求进行拦截处理,以实现特定的功能。怎么做自定义一个实现HandlerInterceptor接口的类并实现接口中定义的抽象方法,如下代码: package com.jd.interceptor;import javax.servlet.http.HttpServletRequest;import javax.se...

2020-04-12 16:02:10 270

原创 Spring 定时器

是什么Java中定时器用于在特定时间运行指定的Java程序,其实现方式有两种:TimerTask和Quartz([kwɔːrts] n. 石英),其中Quartz最为常用,接下来演示如何在Spring框架中配置Quartz定时器:Quartz下载地址:http://www.quartz-scheduler.org/downloads/怎么做1、创建Java工程,如图: ...

2020-03-20 10:54:43 135

原创 详述Spring 框架事务和@Transactional常用属性说明

为什么用Spring框架事务?用来确保数据的完整性和一致性。怎么做?实现声明式事务:1、添加spring-aspects-4.3.10.RELEASE.jar包 2、在Spring配置文件中添加如下配置:<!-- 配置数据源事务管理器 --><bean id="transactionManager" class="org.springframewor...

2020-03-15 17:40:40 152

原创 AOP 详述JDK代理与CGLib代理区别

//JDK动态代理基于接口实现,所以实现JDK动态代理,必须先定义接口JDK代理与目标类没有关系配置如下:application.xml文件中<aop:aspectj-autoproxy proxy-target-class="false"/>Test:package com.jd.test;import org.springframework.cglib...

2020-03-14 21:08:29 174

原创 MyBatis框架一对一与一对多

参数传递:有时Mapper接口需要将一个或多个参数传递到XML映射文件中,那么XML文件如何接收到来自Mapper接口的参数数据呢? 1、Mapper接口方法只有一个参数时,则XML映射文件中获取该参数数据时硬性的要求,比如:接口抽象方法参数为String id,则XML映射文件中可通过#{任意字符串 }获取到该参数的数据。 2、Mapper接口方法当有多个参数时,默认情况下M...

2020-03-13 13:10:00 185

原创 Spring整合MyBatis

1、下载MyBatis与Spring整合jar包: a、点击https://github.com/mybatis/spring链接。 b、点击上图紫框框起位置即可到达下载jar包页面 2、创建一个Java工程,导入相应jar包并为该...

2020-03-08 17:30:51 138

原创 MyBatis动态sql

利用动态 SQL可以很方便地根据不同条件拼接 SQL 语句if常用于根据条件拼接where 子句。示例:<select id="find" resultType="Blog"> SELECT * FROM BLOG WHERE state = ‘ACTIVE’ <if test="title != null"> AND title l...

2020-03-08 17:25:28 106

原创 MyBatis 缓存技

为了提升查询效率,提高用户体验,MyBatis提供了数据缓存支持,依据数据缓存的有效范围默认定义了一级缓存和二级缓存。一级缓存 1、该级缓存默认开启,不能关闭; 2、该级缓存为SqlSession级别的缓存,也称为本地缓存; 3、以下4种情况将会导致该级缓存失效: ...

2020-03-07 20:41:53 75

原创 第一个MyBatis程序

1、什么是MyBatis? MyBatis源自Apache的iBatis开源项目, 从iBatis3.x开始正式更名为MyBatis。它是一个优秀的持久层框架。 官网地址:http://www.mybatis.org/mybatis-3/2、为什么使用MyBatis? 为了和数据库进行交互,通常的做法是将SQL语句写在Java代码中,SQL语句和Java代码耦合在一起不...

2020-03-07 13:58:30 92

C++编程写的通讯管理系统

可以添加查询删除修改联系人

2022-05-11

基于SystenView的2psk平方环的提取

这是我的仿真图

2022-04-30

matlab模拟小提琴的声音课程设计个人代码

matlab模拟小提琴的声音课程设计个人代码

2020-05-21

matlab模拟小提琴的声音课程设计

matlab模拟小提琴的声音课程设计

2020-05-21

信号卷积实验.docx

信号卷积实验 一样实验报告的可以下载

2020-05-13

信号卷积实验.pdf

信号卷积实验.pdf

2020-05-13

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除