常用
吴贝贝97
这个作者很懒,什么都没留下…
展开
-
通过虚函数指针调用虚函数
平台为VS2022,C++14。很疑惑,明明测试long*指针为8字节,结果获取虚函数地址却还是以4字节作为偏差,不是很懂#define _CRT_SECURE_NO_WARNINGS#include <iostream>using namespace std;class Father{ virtual void FatherFun1() { cout << "FatherFun1" << endl; } virtual void Fa...原创 2022-05-06 19:46:10 · 709 阅读 · 0 评论 -
MapGis Objects 二次开发 未能加载文件或程序集
平台:MapGis 10.3、VS2019、.Net 4.0错误:解决办法:1、如果引用的是 32 位的 MapGIS 程序集,设置目标平台为 X86,如果引用的是 64 位的 MapGIS 程序集,目标平台设置为 X 64。2、将VS用管理员权限启动...原创 2020-06-09 16:54:12 · 742 阅读 · 2 评论 -
Java 给图片添加水印 (simpleimage库)
先看效果:水印可以是图片,也可以像我这样是自定义的文字需要的库: <dependency> <groupId>com.alibaba</groupId> <artifactId>simpleimage</artifactId> <ve...原创 2020-03-24 17:14:39 · 959 阅读 · 2 评论 -
Matlab-多曲线画法和点标记
为了避免自己忘记,写个笔记吧。先上效果图:然后是代码,主要是为了自己不忘记,而且自己是新手,所以没有遵守代码规范,有问题评论问我吧。clc;x_1 = 0.01:0.01:0.99;x_2 = 1.01:0.01:10.0;note = ["a_{1}","a_{2}","a_{3}","a_{4}","a_{5}"];C = linspecer(5);hold on;...原创 2019-06-08 20:53:32 · 11129 阅读 · 0 评论 -
Matlab-多曲面画法和多ColorMap表示
为了避免自己忘记,写个笔记吧。先上效果图:然后是代码,主要是为了自己不忘记,而且自己是新手,所以没有遵守代码规范,有问题评论问我吧。clc;x_1 = 0.01:0.01:0.99;x_2 = 1.01:0.01:10.0;y = 0.01:0.01:0.99;%五个曲面,定义五组颜色colormap([parula(32);hot(32);cool(32);wi...原创 2019-06-08 20:49:48 · 7843 阅读 · 16 评论 -
点到线段的最短距离——矢量法
矢量算法过程清晰,如果具有一定的空间几何基础,则是解决此类问题时应优先考虑的方法。当需要计算的数据量很大时,这种方式优势明显。由于矢量具有方向性,故一些方向的判断直接根据其正负号就可以得知,使得其中的一些问题得以很简单的解决。用此方法考虑,我们只需要找到向量 在方向上的投影,具体如下: 上面的 是方向上的单位向量,其意义是给所求向量确定方向。是的两个向量的内积,且 ,...转载 2018-05-01 11:37:56 · 5843 阅读 · 0 评论 -
Java Thread 的使用
Java Thread 的使用 一、线程的状态在正式学习Thread类中的具体方法之前,我们先来了解一下线程有哪些状态,这个将会有助于后面对Thread类中的方法的理解。线程从创建到最终的消亡,要经历若干个状态。一般来说,线程包括以下这几个状态:创建(new)、就绪(runnable)、运行(running)、阻塞(blocked)、time waiting、waiting、消亡(dead)。当需...转载 2018-04-30 14:36:37 · 409 阅读 · 0 评论 -
利用JAVA SOUND播放mp3,flac,ape格式音乐(附Jar包)
先上代码:import javax.sound.sampled.*;import java.io.File;public class AudioFilePlayer { public static void main(String[] args) { final AudioFilePlayer player = new AudioFilePlayer(...原创 2018-04-09 08:11:23 · 5229 阅读 · 14 评论 -
结构体struct和typedef后面接指针的含义
在C语言里面,struct是用来定义新的数据类型——结构体,typedef是给数据类型取别名。据说这两个关键词同时使用有助于减少代码量和增加代码的可读性(不过我认为它当typedef和struct在一起的时候反而降低了代码的可读性),很多时候为了方便,我们常常讲stuct与typedef放在一起用。像这样的代码是比较好理解的,就是取FileInfo为sturct file的别名嘛。转载 2017-04-11 13:32:58 · 563 阅读 · 0 评论 -
结构体定义 typedef struct 用法详解和用法小结
typedef是类型定义的意思。typedef struct 是为了使用这个结构体方便。具体区别在于:若struct node {}这样来定义结构体的话。在申请node 的变量时,需要这样写,struct node n;若用typedef,可以这样写,typedef struct node{}NODE; 。在申请变量时就可以这样写,NODE n;区别就在于使用时,是否可以省去str转载 2017-04-11 13:35:43 · 661 阅读 · 0 评论 -
从内存的角度看free(p) , p=NULL
讲C的书多告诉我们malloc出的内存用完要free掉,为了避免出现野指针,还要将指针置为NULL。今天做了个小实验,从内存的角度看free()究竟做了什么、为什么最后要把指针设为NULL。-----看下面的例子:[cpp] view plain copy #include int main(int a转载 2017-04-13 07:47:04 · 1779 阅读 · 0 评论 -
如何正确使用指针数组?(警醒)
如何正确使用指针数组?程序代码:#include void man(int*a[]);void exchange(int*x,int*y);int main()//求输入10个数求最大最小并把最大和最后一个数换最小和第一个数换,其它数的位置不变并输出要求必须用指针;{ int*a[10],i; int b[10]; /*转载 2017-04-15 13:38:07 · 7656 阅读 · 3 评论 -
带符号的char类型取值范围为什么是-128——127
以前经常看到带符号的char类型取值范围是-128——127,今天突然想为什么不是-127——127,-128是怎么来的? 127好理解,char类型是8位,最高位是符号位,0正1负,所以01111111是127。 但是-128是怎么来的呢?11111111不是-127吗? 后来想起来计算机里面所有数都是用补码表示的,正数补码是其本身,负数补码是原码转载 2017-04-15 16:13:14 · 3379 阅读 · 0 评论 -
C语言标准库函数qsort那点小事
C语言标准库函数qsort那点小事qsort包含在头文件中,此函数根据你给的比较条件进行快速排序,通过指针移动实现排序。排序之后的结果仍然放在原数组中。使用qsort函数必须自己写一个比较函数。函数原型:void qsort ( void * base, size_t num, size_t size, int ( * comparator ) ( const vo转载 2017-04-22 10:50:34 · 184 阅读 · 0 评论 -
C语言中如何定义动态二维数组并输出
可以按照下面步骤进行定义二维数组并输出:1 定义二维指针。2 确定数组维数,即行数和列数。3 申请行数个一维指针大小空间,并赋值给二维指针。4 对于每个一维指,申请列数个元素的空间,并赋值给对应的一维指针。5 输入或赋值数据。6 使用双重循环,逐个范围存储单元并输出。7 逐个释放一维指针上的内存。8 释放二维指针上的内存。转载 2017-04-30 17:31:45 · 22909 阅读 · 2 评论 -
七种qsort排序方法
在对浮点或者double型的一定要用三目运算符,因为如果也使用整型那样的想减的话,如果是两个很接近的数则可能返回一个小数(大于-1,小于1),而cmp的返回值是int型,因此会将这个小数返回0,系统认为是相等,失去了本来存在的大小关系七种qsort排序方法一、对int类型数组排序int num[100];Sample:int cmp ( co转载 2017-05-03 17:21:25 · 689 阅读 · 0 评论 -
memset用法小结
memset函数是按一个字节一个字节来给数组或者是结构体赋值的,给字符数组复制时可以赋任意值,详见:百度百科memse函数点击打开链接但需要注意的是给int型的数组复制时的几点注意:一般常用的复制方式有:[cpp] view plain copyint a[MAXN]; memset(a, 0, sizeof(a转载 2017-05-06 18:45:51 · 262 阅读 · 0 评论