szplzx1314
码龄8年
关注
提问 私信
  • 博客:45,064
    社区:44
    45,108
    总访问量
  • 99
    原创
  • 2,296,543
    排名
  • 264
    粉丝
  • 0
    铁粉
IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:辽宁省
  • 加入CSDN时间: 2017-03-08
博客简介:

szplzx1314的博客

查看详细资料
个人成就
  • 获得19次点赞
  • 内容获得11次评论
  • 获得108次收藏
创作历程
  • 3篇
    2023年
  • 1篇
    2022年
  • 95篇
    2021年
成就勋章
TA的专栏
  • C语言
    17篇
  • Linux
    22篇
  • C++
    34篇
  • python
    1篇
  • QT
    11篇
  • 数据结构
    12篇
兴趣领域 设置
  • 编程语言
    c++c语言qt
  • 开发工具
    githubgitvimdocker
  • 数据结构与算法
    排序算法推荐算法
  • 后端
    后端架构
  • 操作系统
    windowsmacos
  • 服务器
    linuxubuntucentos
创作活动更多

AI大模型如何赋能电商行业,引领变革?

如何使用AI技术实现购物推荐、会员分类、商品定价等方面的创新应用?如何运用AI技术提高电商平台的销售效率和用户体验呢?欢迎分享您的看法

186人参与 去创作
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

多线程detach问题

实际上就是因为std::ref(num),这个转换发生在主线程结束之前,还是之后。如果发生在结束前,val结果就正常。如果发生在结束后,val值就是一个UB。运行可知,num的地址和val的地址不同,两个变量明显不是同一块内存。可是我本意目的就是要这个UB,但发现主线程中数据并没有发生改变。由于引用这个东西,本能的我就想到是因为引用的引用,导致这个问题。昨晚无意间敲少敲了&引用,于是出现了子线程中值UB的问题。线程如果先结束,回收num,val还是会改变。于是各种试验,反汇编,查询无果。
原创
发布博客 2023.05.09 ·
264 阅读 ·
0 点赞 ·
1 评论 ·
0 收藏

C++可变参数宏

C++可变参数宏
原创
发布博客 2023.04.28 ·
221 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

C++真是一门...的语言

发现结果和想象中的不一样,我以为这个after表示的是在fl的迭代器后插入。到这里,瞬间感觉为了迎合一个before_begin,真是不容易啊。于是就特别费解,明明都是左闭右开的形式。突然出现一个左开右开的形式。一直都没有发现,今天偶然用了一下forward_list。在要一个链表插入到另一个链表时使用splice_after。原来他是fl2.begin()的后一个开始插入。看到还有其他形式于是试了一下。
原创
发布博客 2023.03.28 ·
234 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

C++ 中new的使用(new operator, operator new, placement new)

不知道有没有一直看下来的,接下来就是网络编程,然后lua,数据库。再搞源码,操作系统(视频很多跟着敲一下大概了解就可以了), stl, 智能指针。然后服务器,性能,负载。然后简单的看下设计模式,刷刷OJ,996就向你招手了。c++ primer一定要翻一遍,面试的时候稍微有难度的问题回答的不好。态度好一点,虚心点反而不是问题,反而基础问题没有回答上来基本拜拜。尤其大厂。...
原创
发布博客 2022.07.11 ·
463 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

代码管理工具-git

概述代码协同管理工具常用的有snv, git分布式git每个结点都保存完整代码,没有统一的中央服务器,结点之间相互推送下载代码完成共享集中式svn代码集中管理,每次完成代码上传到中央服务器管理,然后统一从中央服务器下载使用多人协同开发备份,防止代码丢失版本管理,多个版本之间进行跳跃多人代码共享传输多人开发,各种模式,方便代码管理git特点...
原创
发布博客 2021.12.23 ·
198 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Linux系统编程-线程二

线程同步就是线程间相互协同(协助),相互配合完成某个工作.根本在于协同步调,按照预定先后次序运行其实就是一个线程返回,另一个线程开始.不然会造成数据混乱数据混乱原因线程间资源共享(当然独享的不会)线程间调度时随机的线程间缺少必要的同步机制(协同,步调)共享和随机不能改变,只能通过协同来着手,使线程出现互斥互斥锁mutex公共数据时,锁会阻塞,哪个线程有锁哪个线程执行但是这个锁叫建议锁,没有强制性.也就是说可以不拿锁,直接去访问数据.只能程序员来指定在访问公共数据时,先去拿锁
原创
发布博客 2021.12.20 ·
162 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Linux系统编程-线程

线程线程是一个轻量级的进程,本质还是进程(Linux下)(其实可以把它就当成一个回调函数)一个进程分为N个线程,最少有一个线程(例如hello world可以成为单线程程序)线程是调用CPU调度的单位(进程是分配系统资源),线程是最小的执行单位,进程是最小的分配资源单位线程有独立的PCB,但没有独立的地址空间(共享地址空间)而进程有独立的地址空间独立的PCB.(线程依赖于进程,所有线程共享进程资源)线程也叫轻量级进程(light weight process),有自己的PCB,创建线程使
原创
发布博客 2021.12.13 ·
1243 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

Linux系统编程-守护进程

概念进程组一个进程组有多个进程进程组PID为第一个进程PID,称为组长进程会话一个会话有多个进程组一个会话可以有一个控制终端建立与控制终端链接的进程称为控制进程(会长进程)进程ID 进程组ID 会话ID 都一样的谁控制终端谁就是前端进程组,否则就是后端进程组创建会话调用进程不能是进程组的组长,该进程变成新会话的首进程(会长进程),原因很简单该进程的PPID和它的子进程PID一样(会话是一个新的组),当然如果调用的也会出错该进程称为组长,也称为会长需要root权限(Ubun
原创
发布博客 2021.12.07 ·
391 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Linux系统编程-信号

概念(我比较懒,大部分纯属个人理解,非标准)信号简单不能携带大量信息需要满足特定条件才会发送信号发出接收者会立即停止处理信号,处理结束在执行后续指令.它是软中断,并不是真正的中断所有信号的产生处理都是内核完成的,我们只是中间的一条线产生信号按键产生,CTRL + C,(终止进程) CTRL + z(暂停,后台运行,可用fg恢复), CTRL + \(终止进程)等系统调用产生, kill, raise, abort等软件条件产生, 定时器 alarm(sleep其实就是一个定时器
原创
发布博客 2021.12.06 ·
1147 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Linux系统编程-进程三

进程案例(父子间)#include <iostream>#include <wait.h>#include <unistd.h>using namespace std;int main(int argc, char** argv){ int pipefd[2]; int pipe_ret = pipe(pipefd); if (pipe_ret == -1) { perror("int pipe_ret = pipe(pipefd);");
原创
发布博客 2021.12.01 ·
708 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Linux系统编程-进程三

进程案例(父子间)#include <iostream>#include <wait.h>#include <unistd.h>using namespace std;int main(int argc, char** argv){ int pipefd[2]; int pipe_ret = pipe(pipefd); if (pipe_ret == -1) { perror("int pipe_ret = pipe(pipefd);");
原创
发布博客 2021.12.01 ·
708 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Linux系统编程-进程二

感觉需要说一下,概念性的东西,都只是个人理解.EXEC函数族头文件#include <unistd.h>execlp(加载一个进程,借助PATH)原型int execlp(const char *file, const char *arg, .../* (char *) NULL */);返回值成功无返回失败返回-1 函数后直接跟(无需判断,因为没有返回,如果成功后续代码不会执行)perror();exit(...
原创
发布博客 2021.11.30 ·
1467 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Linux系统编程-进程

CPU存储是越靠近CPU速度越快,容量越小网络->硬盘->内存->缓存(缓存中还分等级)->寄存器(4byte(32位,1byte = 8 bit,32/8=4))CPU中有预取器(取指令)->译码器(就是个翻译官)->ALU(算数逻辑单元(只能做加法和左移))->最后到寄存器然后在缓存等等到磁盘MMU(大小是4K)将虚拟地址映射到物理地址上MMU会把内存分级,常规等级,还有系统等级(当然这个是我说的,不过分级是真的存在)内核内核(操作
原创
发布博客 2021.11.29 ·
511 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Linux系统编程-文件IO二

递归创建目录
原创
发布博客 2021.11.29 ·
609 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Linux系统编程-文件IO

man 共有九卷,系统编程也就是第二卷的内容,第五卷是文件格式和规范open函数函数原型参数pathname文件名参数flags为访问方式的宏:O_RDONLY(只读),O_WRONLY(只写),O_RDWR(读写)这三个是必须加的O_APPEND(追加),O_CREAT(创建),O_EXCL(是否存在),O_TRUNC(截断,普通文件写操作截断为0),O_NONBLOCK(非阻塞,设置之后后面任何IO操作都不会阻塞)参数mode_t mode是一个八进制数,0777返.
原创
发布博客 2021.11.26 ·
721 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏

linux系统编程最后的准备工作-makefile,gdb调试

vi基本使用之前介绍过就不再叙说了,makefile和GDB这里详细的说一下.当然了,用什么文本编辑,用什么调试最终的目的都是一样的.但是那只是限定于有选择的时候,而开发人员不是消费者,没有选择的时候vi和GDB还是要用的.其实熟练之后命令一定比自然交互要快(无论是鼠标点击,触屏,还是语音),最简单的例子在windows中打开计算器,一定是win + r 然后calc回车更快.makefilemakefile其实也就是一个脚本嘛文件名makefile固定的,全部小写或首字母大写代
原创
发布博客 2021.11.23 ·
413 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

linux系统编程-静态库和动态库(共享库)

静态库N个程序,需要使用同一个静态库,会加载这个库N次.(可以看成宏函数)动态库(共享库)N个程序,需要使用同一个共享库,这个库只有一份可以在连接时加载到各个程序.(其实可以看成函数调用)计算机嘛,无非时间换空间,空间换时间.时间要求高就静态库,空间要求高就共享库.没有特定要求时函数宏函数,当然选函数了.也就是动态库.制作静态库命令ar rcs libxxx.a xxx.olibxxxlib.a 约定的东西,敲代码嘛,别搞.GCC常用命令GCC编译过程:预处理,
原创
发布博客 2021.11.22 ·
1491 阅读 ·
1 点赞 ·
0 评论 ·
4 收藏

python基础语法

import random # 倒入随机数头文件"""python 代码结束没有;代码开始不能有空格注释# 使用在语句后需要两个空格在写 # 之后一个空格 在写内容多行注释 """"""转义字符和C相同
换行 \t制表 等等(靠突然想起来数据库的时候转义符斜线写反了)"""print("hello world") # 输出print("hello world", end="") # print函数会自动换行end=可以增加后续输出,空串表示不换行print(2 ** 4) .
原创
发布博客 2021.11.21 ·
717 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Linux后端开发-shell编程

命令行参数算数运算符算数运算符和C中都一样,但是shell本身并没有这个功能,需要使用expr(他的功能是计算(+-等),关系(><等))其他的算数运算符和C中的一样,取模等也都有.
原创
发布博客 2021.11.21 ·
209 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Linux后端开发-POSIX标准以及shell编程

POSIX标准就是定义了类Unix系统提供接口(系统API(应用程序和库之间的编程接口),shell命令)的标准,便于代码的移植.除了API还有ABI应用程序二进制接口他是让一个可执行的文件可以在支持ABI标准的平台上运行主流Unix都支持POSIX标准,但是不仅仅局限于Unix,简单的说市面上绝大部分系统为了兼容性都会支持.(这些不准确啊,只是个人理解,有兴趣了解详情还是查查比较好)当然了,标准嘛一定会跟随时代的改变而改变,例如C/C++也会更新,新的标准.Linux常见系统调
原创
发布博客 2021.11.20 ·
2156 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏
加载更多