- 博客(651)
- 资源 (4)
- 收藏
- 关注
原创 matlab学习笔记
安装matlab可以直接用学校的许可证,一般学校都有。当前也可以自己弄个破解版matlab,不差钱的话也可以直接选择支持一波。matlab创建项目点击新建->脚本(相当于普通c++.python一样,运行需要保存),或者新建实时脚本(不需要保存就可以运行),然后在编写栏写上代码,直接点击运行即可看到效果。matlab输出fprintf('hello world!');matlab注释参考:https://zhidao.baidu.com/question/121763005.html
2020-06-19 00:53:14 3118 1
原创 cmd命令提示符学习笔记
进入cmd直接在搜索中或者运行中输入cmd换盘进入某个地址用cd执行python代码比如要执行当前目录下的python程序1.py进入当前目录,如果是anaconda prompt的话直接python 1.py就可以,因为前面的python是默认目录下的python如果是cmd的话前者需要一个精确的python地址,比如C:\Users\wyt.DESKTOP-SUI0MPS\Anaconda3\envs\tensorflow\python 1.py效果:查看当前文件夹下的文件
2020-06-04 22:40:39 183
原创 word、wps学习笔记
经过一段时间的写文档,总结了一些写文档基本技巧。关于标题标号,要让文档的标题自动延伸,大小标题有层次感。对各个标题都定义一下样式对于标题选择修改样式点击格式->编号选择多级编号点击同时保存到模版,以后其它的都可以这么用。对于不同的标题直接依次选择下去,就会按标号排下去,且中间加新的,其它的标号都会自动进行调整。效果如下:分布符:点击插入->分页->分页符,在这里会强制换页,对于必须要整页显示的一部分,比如每一章开始都是单独一页,为了避免将来被分开,可以在上面
2020-05-28 19:04:16 1382
原创 tensorflow学习笔记
查看cpu还是gpufrom tensorflow.python.client import device_libprint(device_lib.list_local_devices())
2020-05-24 02:20:31 351
原创 mysql数据库学习笔记(navicat)
数据库的语句调试可以直接在navicat中调试可以直接创建语句写,然后运行删除元素 response.setContentType("text/html;charset=utf-8"); PrintWriter out = response.getWriter(); Connection con; Statement sql; System.out.print(1);...
2020-04-30 18:43:49 388
原创 Java学习笔记
Java开根号参考:https://bbs.csdn.net/topics/40256263import java.lang.Math;double sq=Math.sqrt(5);Java保存double的若干位输出前面用System.out.printf,后面的输出格式同c++写法,比如:System.out.printf("%.1f %.1f",1.0*sum1/cnt1,1....
2020-04-06 13:50:13 252
原创 C++如何在const函数修改成员变量的值
参考:https://blog.csdn.net/hongdameng/article/details/80040617。1.第一种方法很简单,只需要在成员变量前加mutable即可。C++如何在const函数修改成员变量的值。造一个假的this去操作成员变量。使用mutable关键字。
2024-03-29 00:28:27 63
原创 【C++】STL中sort算法使用了什么排序算法?
排序区间大小:当排序区间大的时候使用了快速排序,当排序区间过小的时候停止快速排序,使用插入排序。也就是说经过快速排序后,整段空间被分割为了几段,每段里面的数不是有序的,但是第一段的所有数都小于第二段,第二段的所有数都小于第三段…参考:https://blog.csdn.net/u011386173/article/details/110394829。控制递归深度 --> 使用了堆排序 --> 线性建堆。对于区间较大的情况,使用了快速排序;当递归深度过深时,使用堆排序;最终的排序整理,使用插入排序。
2024-03-29 00:24:47 103
原创 std::vector与std::map的多线程读写问
vector一般情况下同时读写读没问题,但当vector预留内存空间不足,需要扩容导致的变量搬移时,读存在问题,同时写也存在问题,因此需要加锁,防止并发执行。参考:https://blog.csdn.net/qq_33726635/article/details/117200332。map底层结构时红黑树,每插入一个节点,map对下中数据分布就会变,因此,不可以同时写、也不能同时读写。STL 语义上不提供任何强度的线程安全保证。== 同时读写== NO。
2024-03-29 00:20:15 82
原创 静态多态和动态多态 虚函数的实现
参考:https://blog.csdn.net/qq_38374572/article/details/124551614。
2024-03-28 23:30:19 236
原创 C++的编译流程
预处理: 处理一些#号定义的命令或语句(如#define、#include、#ifdef等),生成.i文件。 在链接期,只在可执行程序中记录与动态链接库中共享对象的映射信息。在程序执行时,动态链接库的全部内容被映射到该进程的虚拟地址空间。编译:进行词法分析、语法分析和语义分析等,生成.s的汇编文件。 在程序执行时,这些代码都会被装入该进程的虚拟地址空间中。 在链接期,将静态链接库中的内容直接装填到可执行程序中。编译流程分为四个阶段:预处理、编译、汇编、链接。通过g++的选项可以查看过程中的每一步。
2024-03-28 23:26:24 70
原创 c++动手实现智能指针之shared_pointer
参考:https://blog.csdn.net/weixin_44056971/article/details/118637756。
2024-03-28 23:18:10 19
原创 std::move()和std::forward()
参考:https://www.cnblogs.com/mmmmmmmmm/p/15946627.htmlstd::move和std::forward本质就是一个转换函数,std::move执行到右值的无条件转换,std::forward执行到右值的有条件转换,在参数都是右值时,二者就是等价的一、完美转发 std::forward中文标准库:std::forwardstd::forward是一个模板函数,实现了参数在传递过程中保持其值属性的功能,模板参数决定了它返回的是左值还是右值。
2024-03-27 23:11:00 316
原创 在vscode终端terminal加大栈空间How to increase max stack size in c++ using vscode
参考:https://devpress.csdn.net/cloud/63268204fd0b112779162383.html。在vscode中本质上只需要把-Wl,–stack=268435456加上引号即可。
2024-03-26 23:14:50 446
原创 【 C++ 】如何查看项目中使用的c++版本
在项目任一位置,创建.cpp文件( C/C++ Source.File)由于 IDEA 的不同,在编译执行上存在些许差异。故这里介绍最通用的方法——命令行编译。如何查看项目中使用的c++版本。
2024-03-26 21:17:36 430
原创 C++ static详解
static 从笼统意义的理解上,可以理解为 被此关键字修饰过的函数或变量,即为静态函数或静态变量.静态变量或函数式在系统编译期,main函数运行前就已经分配内存的.在声明它的程序块,子程序块或函数内部有效,值保持虽然上面讲了static关键字修饰不同的类型单位会有不同的效果,但其实可以理解为面向过程程序中的static和面向对象程序中的static,面向过程中的static主要适用于普通变量和函数.面向对象中的static主要适用于类中的成员变量和成员函数.
2024-03-26 19:53:17 583
原创 linux如何查看编译器支持的C++版本(支持C++11、支持C++14、支持C++17、支持C++20)(编译时不指定g++版本,默认使用老版本编译)
如果命令行没有输出(或者只输出了警告信息),则说明您的系统支持C++11。如果输出了错误信息,则说明您的系统不支持C++11。C++11是一个重要的C++标准版本,于2011年发布。这行代码是使用g++编译器来编译一段简单的C++代码,以检查您的系统是否支持C++11。因此,如果需要使用新的C++特性,比如C++11或C++14,最好明确指定版本。一般情况下,默认的C++版本可能是比较老的版本,例如C++98或C++03。如果在编译时不指定C++的版本,那么g++编译器会使用默认的C++版本。
2024-03-26 14:35:10 370
原创 Ubuntu 下统计文件数量的命令
3. 查看当前目录下的文件夹目录个数(不包含子目录中的目录),同上述理,如果需要查看子目录的,加上R。实例展示:如下图所示,当前路径下,有2个json文件和2个文件夹,统计文件数量为2,2. 查看当前目录下的文件数量(包含子目录中的文件) 注意:R,代表子目录。5.查询当前路径下的指定后缀名的所有文件数量(包括子目录)4. 查询当前路径下的指定前缀名的目录下的所有文件数量。【./train】下的文件数量为:22446。【./valid】下的文件数量为:1500。
2024-03-26 14:22:50 287
原创 C++ assert()函数用法案例详解
已放弃使用assert()的原因是,频繁的调用会极大的影响程序的性能,增加额外的开销。assert的作用是先计算表达式 expression ,如果其值为假(即为0),那么它先向stderr打印一条出错信息,然后通过调用 abort 来终止程序运行。一个非常简单的使用assert的规律就是,在方法或者函数的最开始使用,如果在方法的中间使用则需要慎重考虑是否是应该的。assert宏的原型定义在<assert.h>中,其作用是如果它的条件返回错误,则终止程序执行。5)有的地方,assert不能代替条件过滤。
2024-03-25 16:47:56 267
原创 C++类中的函数重写(覆盖)、虚函数、纯虚函数的区别与联系
参考:https://blog.csdn.net/zhang_cherry/article/details/108647349。
2024-03-25 16:35:22 380
原创 c++ constexpr 和 const 之间有什么区别?
constexpr 修饰的函数,简单的来说,如果其传入的参数可以在编译时期计算出来,那么这个函数就会产生编译时期的值。但是,传入的参数如果不能在编译时期计算出来,那么 constexpr 修饰的函数就和普通函数一样了,比如上面代码直接调用了 func(i)。不过,我们不必因此而写两个版本,所以如果函数体适用于 constexpr 函数的条件,可以尽量加上 constexpr。const 修饰的函数一般都是成员函数,用来表示这个函数不会对成员变量产生写操作,这点很好理解。我们重点来看 constexpr。
2024-03-25 16:11:30 140
原创 为什么C++11的std::move进行右值引用之后源对象还可以进行操作?
std::move本身并不会对源对象进行任何实际的修改,它仅仅是将一个左值转换为右值,使得可以将资源从源对象“移动”到新对象。在std::move之后,源对象仍然是一个完全有效的C++对象,可以进行赋值、销毁等操作。这对于管理大量资源的大型对象尤其有用。因此,通常在使用std::move之后,我们应该假设源对象的状态已经改变,并避免再次使用它,除非我们已经明确地重新赋值或重置了它。如果我们需要再次使用源对象,那么我们可能需要使用复制操作而不是移动操作,或者在移动操作之后重新初始化源对象。
2024-03-25 16:03:09 200
原创 mysql无法看到3306端口监听
参考:https://blog.csdn.net/shumeigang/article/details/103902459。注释掉,然后重新启动下数据库,运行netstat -an|grep 3306 就可以看到了。
2024-03-22 00:24:47 335
原创 MySQL登录报错 ERROR 1045 (28000): Access denied for user ‘root‘@‘localhost‘ (using password: YES)
参考:https://blog.csdn.net/m0_64304713/article/details/133975710。1.修改/etc/my.cnf文件,在[mysqld]中添加skip-grant-tables(登录时跳过权限检查)错误 1045 (28000):用户“root”@“本地主机”的访问被拒绝(使用密码:是)【MySQL密码不好设置,可以跟我一样设置密码为:Abcdefg@123】(1)若MySQL已经没有启动,重启MySQL服务器。会让你输入密码,直接点击回车即可。
2024-03-22 00:21:03 319
原创 解决1130-Host‘ ‘is not allowed to connect to this MySQL server,实现远程连接本地数据库
(flush privileges 命令本质上的作用是将当前user和privilige表中的用户信息/权限设置从mysql库 (MySQL数据库的内置库)中提取到内存里。MySQL用户数据和权限有修改后,希望在"不重启MySQL服务"的情况下直接生效,那么就需要执行这个命令。mysql 新设置用户或更改密码后需用flush privileges刷新MySQL的系统权限相关表,否则会出现拒绝访问,还有一种方法,就是重新启动mysql服务器,来使新设置生效。输入密码,登录mysql。输入use mysql。
2024-03-21 23:58:06 222
原创 C++中map用Insert如果原来有值并不会覆盖
C++用Insert如果原来有值并不会覆盖,记得清空。或者直接用Map[key]=value来弄。
2024-03-15 14:17:32 216
原创 vscode 向下复制当前行(即visual studio 中的Ctrl + D)功能快捷键
打开vscode左下角键盘快捷键设置,找到copy line down,即可查看当前默认快捷键为“shift + Alt + ↓”参考:https://blog.csdn.net/haihui1996/article/details/87937912。双击快捷键,输入自己想要的快捷组合,如Ctrl+D,然后回车即可设置自己的组合了。
2024-03-14 16:42:46 474
原创 How to solve: Invalid Order: binance {“code“:-1013,“msg“:“Filter failure: MIN_NOTIONAL“}
参考:https://github.com/ccxt/ccxt/issues/9324。
2024-03-07 21:29:49 182
原创 C++ terminate called after throwing an instance of ‘std::invalid_argument‘ what(): stoi
参考:https://blog.csdn.net/weixin_44178960/article/details/123749016。
2024-03-05 02:42:28 166
原创 c++相对路径与绝对路径
参考:https://blog.csdn.net/weixin_42175509/article/details/114360938。但反斜杠表示转义字符,所以绝对路径要用双反斜杠:\;如:E:\test\file\data。./data,表示当前路径的下一级路径,./data/xxx,表示当前路径的下下一级路径。./,表示当前路径;/表示当前路径的上一级路径;/表示当前路径的上上一级路径。1、获取当前路径:用getcwd()函数,返回值是一个指向字符串的指针。如: E:\test\file\data。
2024-03-02 03:48:03 283
原创 [Error] cannot pass objects of non-trivially-copyable type ‘std::string {aka class std::basic_string
参考:https://blog.csdn.net/liu16659/article/details/86546239。使用scanf【c语言】输入string【c++】的对象。这个也会引起程序的崩溃。不应该使用printf输出一个String类型的字符串。使用cout << str。
2024-03-02 03:46:37 277
原创 在c++11 的unordered_set和unordered_map中插入pair或tuple作为键值
C++的std::pair是无法std::hash的,为了在unordered_set和unordered_map中使用std::pair,有如下方法。还有个前提,pair 和 tuple 中的元素本身得是可以 std::hash 哈希的。注意:上面的代码使用的异或(XOR),由于x^x == 0并且x^y == y^x,所以应该配合一些位运算的shift或rotate来做。方法一:专门写个可用于std::pair的std::hash。方法二:使用boost::hash。想完成的任务 与 遇到的问题。
2024-02-21 19:54:33 1043
原创 iOS如何一键清除剪贴板中的所有内容
4.此外,快捷指令还支持添加到“小组件”中,这样您就可以不用打开这个应用,直接在主界面上一键清除剪贴板了。3.添加成功后,您就可以在“我的快捷指令”中找到这个快捷指令,轻点它即可一键清除复制的所有内容。1.打开“快捷指令”应用,前往“快捷指令中心”,下拉找到“巧用剪贴板”并点击“查看全部”。参考:https://www.jb51.net/shouji/746688.html。
2024-02-19 12:04:09 132
原创 C++比较两个proto是否一样
参考:https://stackoverflow.com/questions/3228107/google-protocol-buffers-compare/32351914#32351914。
2024-01-24 12:08:47 432
原创 DtypeWarning: Columns (17) have mixed types. Specify dtype option on import or set low_memory=False.
出现的问题是一列中出现了多个数据类型,会在读取文件时出现问题,默认情况下,读取文件时会自动匹配占用存储最少的数据类型,如果一列出现多个数据类型,那么可能会造成数据的损失。参考:https://blog.csdn.net/virus111222/article/details/128134560。我采用了第二种方法,就是在读csv的时候,在结尾加上low_memory=False解决了这个问题。low_memory的意思是低内存,读取文件时会自动匹配占用存储最少的数据类型。即在读取文件时制定列的数据类型。
2023-12-29 01:42:00 465
原创 Floating point exception
参考:https://blog.csdn.net/yyangzhenjie/article/details/87859506?2.非法运算,如分母为0等;(首先检查该项,是否有分母为零的情况,如文件路径不正确,由于找不到图片,给出图片总数为0,但内部运算了识别率等用到该图片数作为分母的情况)linux下运行抛出异常:Floating point exception(浮点数异常)1.高版本编译的gcc库,在低级gcc下运行;本地写代码,根据错误码确实debug出来了。是因为除了0,那个值初始值没有给。
2023-12-21 03:15:38 171
原创 通俗理解TP、FP、TN、FN
Recall表征的是预测正确的正样本的覆盖率,查全率等于预测正确的正样本数量/所有正样本的总和,TP+FN实际就是Ground Truth的数量。Precision表征的是预测正确的正样本的准确度,查准率等于预测正确的正样本数量/所有预测为正样本数量。TN:True Negative,分类器预测结果为负样本,实际为负样本,即负样本被正确识别的数量。FP+TN:真实负样本的总和,负样本被误识别为正样本数量+正确分类的负样本数量。TP+TN:正确分类的样本总和,正确分类的正样本数量+正确分类的负样本数量。
2023-11-27 20:40:34 551
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人