自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(69)
  • 资源 (1)
  • 收藏
  • 关注

原创 C语言 简单易懂的链式存储栈表操作

文章目录链表建栈的原理栈详细定义请移步至C语言 一分钟看懂的顺序栈操作本文只讲解链表建栈以及操作链表建栈的原理我们都知道栈只能在一端进行操作,因此造成元素先进后出(First In Last Out),通常都是采用单链表的形式实现,并且规定所有的操作都在表头进行操作,因此我们才有头插法进行创建,建栈过程如图所示链表建栈的有优点是便于多个栈共享存储空间,且不存在栈满上溢的情况...

2020-04-15 20:14:43 604

原创 C语言 单链表 基本操作与实现

C语言单链表的基本操作结构体typedef struct { int data; struct SqNode * Next;//指向下一个节点}SqNode,*SqList;链表的初始化SqList InitList(SqNode* L){ L = (SqNode*)malloc(sizeof(SqNode));//动态申请空间 if(!L) return NULL;//如...

2020-03-28 23:00:44 963

原创 redis 基础

包含redis基础命令,Springboot整合Redis

2023-01-06 11:09:50 454 1

原创 Android 实现歌词文字逐渐高亮效果

Canvas是可以是有多层绘制效果组成的,我们可以现在底层绘制我们的基础文字效果,然后再上层绘制我们的高亮效果

2022-06-04 18:39:40 527

原创 OkHttp源码解析

OKHttp源码分析

2022-04-05 17:20:42 458

原创 java 并发编程

java 线程池ThreadLoop

2022-03-20 21:40:09 340 1

原创 Java 保留两位小数或N位

Java保留两位小数 拿来即用 先扩大n+1倍 在取个位数 判断是否大于等于五 若大于等于5 则加10 在除以n+1倍 然后判断小数位数是否合法

2021-12-27 21:25:09 268

原创 OpenCV基础API函数五

VideoCapture 读取视频HSV 颜色空间转换---抠图calcBackProject 直方图反射投影cornerHarris goodFeaturesToTrack 角点检测createBackgroundSubtractorMOG2 背景分析ORB 关键点检测ORB 匹配warpPerspective 透视变换

2021-12-25 15:27:51 1533

原创 OpenCV基础API函数实战一

检测最大星云图的边缘和面积

2021-12-25 13:42:03 2105

原创 OpenCV基础API函数四

connectedComponents 联通组件扫描connectedComponentsWithStats 联通组件扫描统计信息Moment 几何矩HuMoment Hu矩matchShape 形状匹配HoughLines , HoughLinesP 霍夫直线检测erode And dilate 腐蚀和膨胀形态学基本梯度,内梯度,外梯度morphologyEx 形态学操作

2021-12-16 19:41:38 3908

原创 OpenCV基础API函数三

GaussianBlur 高斯模糊void GaussianBlur( InputArray src, OutputArray dst, Size ksize,double sigmaX, double sigmaY = 0,int borderType = BORDER_DEFAULT );返回值: 空src:原图像dst: 结果图像ksize:模糊窗口的大小sigmaX: X轴方向的卷积核标准差sigmaY: Y轴方向的卷积核标准差,默认为零表示X=Y,当sigmaX,sigmaY同

2021-12-05 20:09:39 4392

原创 OpenCV基础API函数二

OpenCV基础API函数二 setMouseCallback 鼠标响应事件flip 图像翻转``持续更新中....请各位大佬多多指点`` setMouseCallback 鼠标响应事件void setMouseCallback(const String &winname, MouseCallback onMouse, void *userdata = 0);返回值: 空winname: 显示窗口的名字onMouse: 鼠标响应回调函数userdata: 给鼠标回调函数传递的任意

2021-11-25 22:07:59 472

原创 OpenCV基础API函数一

imread 读取图片namedWindow 创建一个显示窗口imshow 显示图片destroyAllWindows 和 destroyWindow 销毁窗口waitKey 等待按下一个键cvtColor 色彩空间转换图片的加减乘除运算createTrackbar 创建滑动条applyColorMap 给图片添加(应用)彩色图split 多通道图像分解成几个单通道图像merge 合并几张单通道的图片inRange 二值化(彩色图像二值化)Resizes 重新设置图片的大小

2021-11-06 23:44:37 1956

原创 cmake解决opencv编译下载失败的方法

cmake解决opencv编译下载失败的方法一、ippicv_2020_win_intel64_20191018_general.zip下载失败二、opencv_videoio_ffmpeg_64.dll、opencv_videoio_ffmpeg.dll下载失败三、boostdesc_bgm.i相关文件下载失败四、vgg_generated_120.i相关文件下载失败五、face_landmark_model.dat下载失败原文章地址.非常感谢,一语点破梦中人一、ippicv_2020_win_int

2021-11-06 23:01:12 2308 2

原创 C++ 多线程 消费者与生产者

C++ 多线程 消费者与生产者伪代码代码结束伪代码代码在Java 中我们利用synchronized关键字来实现同步与互斥,在C++ 中我们利用 pthread_mutex_t pthread_cond_t来实现同步与互斥 pthread_mutex_t是锁,pthread_cond_t类似于信号量SafeQueue.cpptemplate<typename T>class SafQueue {private : queue<T> queueData;

2021-11-02 13:08:22 512

原创 Android 实现JNI动态注册

Android 实现JNI的动态注册前景什么是静态注册静态注册的优缺点优点缺点什么是动态注册实现创建步骤用到的方法结束前景JNI可以说是Java 和Native 的桥梁 起承上启下的作用,没有JNI Android就只能访问到Java 的Framework层,在想深入可谓是举步维艰.什么是静态注册静态注册就是根据函数名来建立Java函数与JNI函数一一对应的关系JNI函数名的规则:Java_包名_类名_函数名,也就是以这种规则来确认JNI函数与某个类Java函数的对应关系在Java加载so库的时

2021-11-02 12:42:58 2087

原创 Android Studio集成C/C++库文件步骤

Android集成C/C++库文件步骤文件架构添加头文件和库文件配置CMake文件结束文件架构inc文件的位置可以随便放置,jniLibs文件的位置必须在那个位置,否则需要在build.gradle文件中修改配置添加头文件和库文件把自己需要的头文件和库文件分别添加到inc jniLibs文件中,如下图所示配置CMake文件为了跟好的进行说明我把CMake文件中的注释删除fmod fmodL是与库文件中个文件一一对应的,例如jniLibs库文件中还有一个这样的文件libXXX.so 则必须

2021-10-31 10:24:26 1797

原创 JNI 玩转Java基本属性和对象

JNI 玩转Java基本属性和对象前景知识Java,JNI,C++三者的关系JNI和Java属性对应关系签名前期准备文件Java的基本属性创建Java对象前景知识Java,JNI,C++三者的关系JNI是中转站,C++想要操作Java的数据,首先得第一条就是让JNI获取到Java的数据,也就是JAVA把数据传递给JNI,JNI经过一些列的处理,再传递给C++,C++想把数据传递给Java,同样也需要通过JNI进行中转.Java与C++是相互分离的,不进行直接的交互JNI和Java属性对应关系

2021-10-28 21:03:46 159

原创 Android Studio 开发NDK步骤

Android Studio 开发NDK步骤Android Studio版本步骤下载NDK检查自己是否下载``NDK`` ``CMake`` 若没下载则选中4,5然后点击Apply创建工程创建完成之后的文件目录创建C++方法结束Android Studio版本Android Studio Arctic Fox | 2020.3.1 Patch 3步骤下载NDKFile -->Settings检查自己是否下载NDK CMake 若没下载则选中4,5然后点击Apply然后漫长的等待,

2021-10-25 20:49:15 996

原创 C++ for_each自定义仿函数

C++自定义仿函数仿函数例子.main代码#include <iostream>#include <list>#include <algorithm>//导入算法包using namespace std;//自定义仿函数class AA{public: void operator()(string conut){ cout << "我是仿函数" << " " << conut <&lt

2021-10-22 15:37:12 366

原创 C++实现接口回调

C++接口回调实现全虚函数--->Java抽象类实现类注意 :``我们在java中,在内部类是可以直接new 出接口然后去实现,但是在C++中是不支持的,所以我们需要自己手动写一个实现类``实现在C++中并没有接口回调,但是为了更好地理解,我们说成是类似Java中的接口回调全虚函数—>Java抽象类.h文件#ifndef UNTITLED_ILOGIN_H#define UNTITLED_ILOGIN_H#include <iostream>#include "Us

2021-10-21 15:19:04 752

原创 C++的抽象类

C++的抽象类抽象类的一般规范注意 : ``我们在写抽象函数的时候 .h文件一定要加上# ifndef ,#define, # endif // 预处理指令``不然编译器会循环引用报错实战结果注意 ``如果继承类没有重新纯虚函数,那么这个类本身也是一个抽象函数``抽象类的一般规范.h文件#ifndef CLASSNAME_H#define CLASSNAME_Hclass ClassNamw{//// 省略其他逻辑代码////public:virtual void showInfo()

2021-10-20 19:44:53 108

原创 C++ 的多态

C++的多态C++的多态的实现是利用虚函数来实现的我们先来看几个例子//我们先定义三个类 都非常的简单就一个函数进行打印类的名字,father和mather公开继承Object类class ObjectFactory {public: void show() { cout << "BaseFactory show" << endl; }};class FatherFactory : public ObjectFactory {publ

2021-10-19 20:59:46 53

原创 C++ []符号重载

符号重载我们利用重载符号operator重载[]自定义个容器.h文件#include<iostream>using namespace std;class ArrayClass {private: int def = 10; int size = 0; int *value = (int *) malloc(sizeof(int) * def);public: void set(int, int); int getSize()con

2021-10-18 20:39:43 133

原创 C++ <<符号重载

<<符号重载.h文件#include <iostream>using namespace std;class Point {private : int x = 0; int y = 0;public: Point(); Point(int, int); int getX() const; void setX(int x); int getY() const; void setY(int y);

2021-10-18 20:13:10 174

原创 android XML加载的过程

XML加载过程怎么加载布局大家有没想过XML布局文件是怎么被加载到出来的呢,又是怎么解析的呢,Inflate的三个参数又是代表什么意思呢?,false与true有什么区别的,今天就带大家一探究竟怎么加载布局我们在加载布局无非就三种情况Activity中加载布局Fragment中加载布局Adapter中加载布局加载布局的方法在Activity中我们使用的就是setContentView()方法进行加载布局在Fragment和AdapterLayoutInflater.from(ac

2021-08-17 16:10:14 697

原创 Android Adapter 通用适配器

打造通用的适配器以前的适配器ViewHolder以前的适配器一目十行随便扫描一下.不想看的此处可以直接跳过public class ScanBarItemAdapter extends BaseCommonAdapter<HashMap<String, String>>{ private Viewholder viewHolder; public ScanBarItemAdapter(Activity activity) { supe

2021-08-17 11:07:45 457

原创 自定义ViewGroup

自定义ViewGroup首先需要做什么 1.要继承ViewGroup 2.重写四个构造方法 3.重写 onMeasure(),onLayout()两个方法 4.在onMeasure()中递归计算子View以及本身的大小 5.在onLayout()中绘制布局下面详细讲解每一步骤继承ViewGroup以及重写构造方法和onMeasure(),onLayout()方法public class flowlayout extends ViewGroup{ //一个参数的构造方法:在new一个实

2021-08-15 11:36:53 151

原创 隐藏所有的Fragment

隐藏所有的fragment首先把fragment加入fragment栈中隐藏所有的fragment首先把fragment加入fragment栈中再加入栈中的同时需要给每一个fragment指定唯一的TAG,后面在隐藏的时候需要用到private void addFragment(Fragment fragment,String TAG) { FragmentManager manager=getSupportFragmentManager(); Fragment

2021-08-11 09:41:35 525

原创 ViewPage与MagicIndicator实现滑动页面

ViewPage与MagicIndicator实现滑动页面添加依赖创建基础viewPager适配器Viewpager适配器创建若干个fragment在MainActivity中设置ViewPage与MagicIndiacator添加依赖在app内部build.gradle添加依赖implementation 'com.github.hackware1993:MagicIndicator:1.6.0'在最外部build.gradle添加maven下载地址创建基础viewPager适配器impo

2021-07-13 15:19:12 317

原创 Android 笔记 < 二 >

添加镜像依赖在根部录下的build.gradle文件下添加镜像依赖,分别在 buildscript->repositories和allprojects->repositories节点下添加依赖buildscript { repositories { //添加镜像依赖 maven { url 'http://maven.aliyun.com/nexus/content/groups/public/' } maven{ url 'htt

2021-05-31 11:06:27 127

原创 Java注解笔记

什么是注释:应该很简单,注释是给人看的什么是注解呢?注解不仅仅是给人看的还是给编译器看的注解的样式,我们已经很多注解了@Override,这一个就是我们最最经常见到的注解它代表的意思是重写一个方法那注解怎么定义呢来我们看看 @Override是怎么定义的public @interface Override {}使用一个@注解名 这就定义一个注解了我们还有几个元注解,元注解就是对注解进行解释的注解@Target(参数)//参数是可以省略的那我们的Target又有什么类型的参数呢

2021-05-07 20:19:04 67

原创 自定义Toast弹框

自定义Toast弹框主要代码布局文件Activity文件主要代码public void showToastInfoShort(String str) { this.runOnUiThread(new Runnable() { @Override public void run() { LayoutInflater inflater = getLayoutInfl

2021-05-06 13:08:11 168

原创 LitePal 简单使用

LitePal 简单使用配置LitePal添加依赖创建assets资源文件夹创建数据库修改数据库表删除数据库建立表关联数据库操作插入配置LitePal添加依赖在我们的build.gradle文件下的dependencies下面添加implementation 'org.litepal.guolindev:core:3.2.3'如图:创建assets资源文件夹1 你的Android切换成Project,2选中你的Model右键–>New–>Directory然后输入assets然

2021-04-06 23:18:13 357

原创 SQLite

SQl语句增String sql="insert into "+Constants.TABLE_NAME+" ( _id,name,age,salary,phone,address) values (?,?,?,?,?,?)" db.execSQL(sql,new Object[]{1,"xiaocai",18,100,123,"USA"}); db.close();删String sql="delete from "+Constants.TABLE_NAME+" where age=1

2021-04-02 12:32:15 71

原创 OKHttp get 踩过的坑

首先必须必要马上要做的事情就是在manifest文件中开启联网权限<uses-permission android:name="android.permission.INTERNET" />还必须引入Okhttp的jar包可以再okhttp官网上下载或者在build.gradle中引入compile 'com.squareup.okhttp3:okhttp:3.5.0'还有注意的就是写okhttp要求我们必须在线程中请求http,然后在利用handle进行传递消息需求如下点击按

2021-03-31 16:28:46 108

原创 Android java.io.FileNotFoundException错误

Android Url连接报错找不到文件问题 java.io.FileNotFoundException错误解决问题 java.io.FileNotFoundException错误在安卓进行测试的时候,我们进行httpURLConnection的时候用英文测试没有问题例如https://geoapi.qweather.com/v2/city/lookup?location=beijing&range=cn&lang=zh&key=ced0f37ec5ad4ce1a01c579

2021-03-31 09:10:14 2234

原创 Git 核心笔记

Git 核心笔记基础命令上传到git仓库两步骤创建远程分布式版本控制系统克隆版本创建新的分支恢复工作区基础命令命令名说明mkdir 文件名创建文件cd切换目录pws显示文件git init//初始化仓库 步骤 先到想要当前目录之下然后在用git init进行初始化ls -ah//查看详细的文件,dir 也可以git log查看文件的历史记录git log 文件名查看指定文件的历史记录git log --pretty=onel

2021-03-23 20:15:02 81

原创 Android 核心笔记

Android 核心笔记文件什么是布局管理器常用的布局管理器RelativeLayout:相对布局管理器LinarLayout:线性布局管理器FrameLayout:帧布局GridLayout:网格布局管理器TableLayout:表格布局管理器GridLayout:网格布局管理器文件manifest: 配置全局变量activity 是程序的入口activityjava 放置Android所需要的文件以及java源文件一个activity就是一个Java类文件对onCreate类重新:用来初始

2021-03-23 15:18:41 773

原创 C# 委托笔记

C# 委托笔记委托声明<修饰符> delegate <返回值类型> <委托的名字> <参数列表>例如public delegate void bug(); 参数可有可无根据自己说的情况而定class Program { public delegate string bug(string s); //定义一个公开类型的 返回时是字符串相的,有参数的委托;委托只能放到方法的外部 static void Main(string[] args

2021-03-22 15:21:03 48

TestFmod1.rar

android通过集成FmodC/C++库对声音进行处理实现变声

2021-10-31

空空如也

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

TA关注的人

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