PERL开发环境搭建>>Windows,Linux,Mac OS
特点
简单
快速
perl解释器直接对源代码程序解释执行,是一个解释性的语言, 不需要编译器和链接器来运行代码>>速度快
灵活
借鉴了C/C++, Basic, Pascal, awk, sed等多种语言, 定位于实用性语言,既具备了脚本语言的所有功能,也添加了高级语言功能
开源.免费
没有"源代码保护条款"
应用场合
开发环境搭建
Windows下搭建
下载安装软件
1.自己安装编译器>>下载Perl模块>>依次进行编译,注册安装
2.下载已经编译好的文件,直接安装
区别: 前一种方法可以安装所有的模块, 后一种方法只能安装预先设定好的模块. 一般编译好的模块都包括了日常所需的模块>>初学者建议选择第二种
Strawberry perl的安装 : Strawberry perl的下载,查询版本号,配置Path环境变量,查找perl解释器的位置-CSDN博客
其他软件: ActivePerl
2.点击文件进行安装
3.设置环境变量
安装软件(ActivePerl ,ActivePerl )时,软件会自动设置环境变量, 有时由于系统的兼容性问题, 需要手动设置
设置环境变量的目的是: 在使用Perl时, 只需要输入perl, 可以不带绝对路径>>让系统认识这四个字母
设置环境变量的方法:Strawberry perl的下载,查询版本号,配置Path环境变量,查找perl解释器的位置-CSDN博客
4.测试安装是否成功
Strawberry perl的下载,查询版本号,配置Path环境变量,查找perl解释器的位置-CSDN博客
在Linux下搭建
下载 → 解压 → 配置 → 编译 → 安装
以下所有命令均在Linux终端中执行
1.检查是否自带Perl
大多数Linux系统自带perl, 但可能存在版本过旧的问题
2.下载安装源码
如果系统没有Perl, 下载安装源码
# 示例下载链接(需替换为实际版本)
wget https://www.cpan.org/src/5.0/perl-5.20.2.tar.gz
-
作用:从 Perl 官网 下载指定版本的源码压缩包。
注意:需确保系统已安装 wget
或 curl
。
如果官方链接失效,可通过国内镜像(如阿里云、清华源)下载 Perl 源码包
wget https://mirrors.aliyun.com/CPAN/src/5.0/perl-5.20.2.tar.gz
检查wget是否安装
检查cur1是否安装
如果未安装,根据系统包管理器安装
安装后再次运行 which
或 --version
命令确认是否成功
3. 解压源码包
tar zxvf perl-5.20.2.tar.gz -C /usr/local/src
-
作用:解压下载的
tar.gz
文件到/usr/local/src
目录。 -
参数解释:
-
z
:解压.gz
格式。"gzip" -
x
:解压文件。"extract" -
v
:显示解压过程(可选)。"verbose" -
f
:指定文件名。"file" -
-C
:指定解压目标目录。"change directory"
-
-
执行位置:在终端中运行,需确保当前用户对
/usr/local/src
有写入权限。
4. 创建安装目录
mkdir /usr/local/perl
没有root权限时
sudo mkdir /usr/local/perl
5. 进入解压目录
cd /usr/local/src/perl-5.20.2
如果解压路径不同,需调整命令中的路径
6. 配置编译选项
./Configure -des -Dprefix=/usr/local/perl -Dusethreads -Uversiononly
-
./Configure
:
Perl 的配置脚本(注意首字母大写C
,这是 Perl 特有的脚本名称)。 -
-des
:-
-d
:使用默认答案(非交互式安装)。"default" -
-e
:静默模式(不显示冗长输出)。"execute" 或 "environment" -
-s
:跳过部分非必要提示, 静默安装。"silent"
-
-
-Dprefix=/usr/local/perl
:
指定安装路径,编译后的 Perl 会安装到/usr/local/perl/bin/
,避免覆盖系统自带 Perl。-Dprefix 指的是
"destination prefix"目标安装路径 -
-Dusethreads
:
启用线程支持(需系统具备线程库,如pthread
)。-Dusethreads
选项代表的是 "enable threads", 在编程和命令行参数中,-D
前缀通常用于表示 "define" 或 "enable" 的意思。这种用法源自于 C 语言和 Unix 系统中的宏定义,其中-D
用于定义宏。 -
-Uversiononly
:
禁用仅保留版本号命名的 Perl 二进制,-Uversiononly
选项代表 "Universal version only"。这个参数用于指定在安装或编译 Perl 时,只使用通用的版本命名(如perl
),而不是特定版本的命名(如perl5.20.2
)
7.编译和安装
make # 编译源码(可能耗时较长)
make test # 可选:运行测试套件
sudo make install # 安装到指定前缀路径
8.替换系统自带的 Perl 版本
备份系统自带的 Perl
sudo mv /usr/bin/perl /usr/bin/perl.bak
创建符号链接
sudo ln -sf /usr/local/perl/bin/perl /usr/bin/perl
-
sudo
:以超级用户(root)权限执行命令。sudo
代表 "superuser do"。 -
ln
:命令用于创建链接,可以是硬链接或符号链接。ln
代表 "link"。 -
-s
:指定创建符号链接(软链接)。s
代表 "symbolic"。 -
-f
:如果目标链接已经存在,强制删除并重新创建。f
代表 "force"。(若未备份原文件,需谨慎使用)
测试是否安装成功
perl -version
如果返回” This is perl 5, version ......” 说明安装成功
9. 执行perl脚本
方法1
通过 Perl 解释器显式运行
perl test.pl
-
无需
shebang
和文件权限,直接调用当前环境的perl
解释器。
是否要配置 PATH 环境变量
1.不需要配置 PATH 的情况
系统默认 Perl 路径已包含在 PATH 中
运行
which perl
若输出类似 /usr/bin/perl
,则说明已全局可用
2.需要配置 PATH 的情况
自定义安装路径
# 临时生效(仅当前终端)
export PATH=/usr/local/perl/bin:$PATH# 永久生效(添加到 ~/.bashrc 或 ~/.bash_profile)
echo 'export PATH=/usr/local/perl/bin:$PATH' >> ~/.bashrc
source ~/.bashrc
之后才能直接调用 perl test.pl
(否则需写全路径 /usr/local/perl/bin/perl test.pl
)
多版本共存时切换默认 Perl
若系统存在多个 Perl 版本(如系统自带 /usr/bin/perl 和自定义安装 /usr/local/perl/bin/perl),需通过 PATH 优先级控制默认版本。
临时切换
# 使用自定义版本优先
export PATH=/usr/local/perl/bin:$PATH# 使用系统版本优先
export PATH=/usr/bin:$PATH
永久切换
# 永久生效(添加到 ~/.bashrc 或 ~/.bash_profile)
echo 'export PATH=/usr/local/perl/bin:$PATH' >> ~/.bashrc
source ~/.bashrc
方法2
给perl脚本文件添加执行权限
chmod +x test.pl
必须在脚本第一行指定 Perl 解释器路径
#!/usr/bin/perl
# 或使用自定义路径(如新安装的 Perl)
#!/usr/local/perl/bin/perl
执行
./test.pl
-
./
表示当前目录(相对路径),避免被系统误认为是命令。
Mac OS下搭建
MacO系统默认自带安装了Perl,也可通过Xcode来重新安装Perl
进入 App Store,搜索并安装 Xcode(苹果官方开发工具包)。
在Applications->Utilities下打开Terminal.app,
输入
curl-L http://xrl.us/installperlosx | bash
-
curl
-
一个用于传输数据的命令行工具,支持 HTTP、HTTPS、FTP 等协议。
-
此处用于从指定 URL 下载内容。
-
-
-L
选项-
让
curl
自动跟随重定向(如果 URL 返回 301/302 跳转,会追踪到最终地址)。 -
例如,
xrl.us
是一个 URL 缩短服务,实际会跳转到真实的 Perl 安装脚本地址。 -
L 即 "location"
-
-
http://xrl.us/installperlosx
-
这是 Perl 官方为 macOS 提供的安装脚本的短链接。
-
实际会跳转到类似
https://raw.githubusercontent.com/perlbot/installperlosx/main/installperlosx
的地址(具体以官方为准)。
-
4. | bash
-
将下载的脚本内容通过管道( | )传递给
bash
解释器直接执行,完成 Perl 的自动安装。
安装完成后,在终端中perl-v查看已安装的Perl版本信息
在终端中用 perl<程序名>来运行Per程序
短链接
http://xrl.us/installperlosx
是一个 URL 短链接,它的作用是将一个很长的原始网址压缩成简短易记的形式。
xrl.us
是 Perl 社区中一个知名的 URL 短链接服务,专门为 Perl 相关的资源、文档、邮件列表或讨论提供简短的网址。它的域名是 "xrl.us"(发音类似 "short URL")
短链接如何映射到原始链接
短链接服务(如 xrl.us
)维护一个 数据库,存储短链接和原始 URL 的对应关系
如何根据原始 URL 创建短链接
方法 1:通过短链接服务网站
-
访问短链接服务提供商的网站(如
xrl.us
或bit.ly
)。 -
在输入框中粘贴原始 URL(长链接)。
-
点击生成按钮,系统会返回一个短链接(如
http://xrl.us/installperlosx
)。
方法 2:通过 API(编程方式)
部分服务提供 API,可通过代码生成短链接。例如:
终端输入
curl -X POST https://api.xrl.us/create \-d "url=https://raw.githubusercontent.com/perlbot/installperlosx/main/installperlosx"
返回结果可能包含短链接
{"short_url": "http://xrl.us/installperlosx"}
解释命令
curl
-
功能:一个用于传输数据的命令行工具,支持多种协议(HTTP/HTTPS/FTP 等)。
-
此处作用:向指定的 API 发送 HTTP 请求。
-X POST
-
功能:指定 HTTP 请求方法为
POST
(用于提交数据)。 -
说明:创建资源时通常使用
POST
方法。
https://api.xrl.us/create
-
功能:目标 API 地址(假设的短链接服务接口)。
-
说明:
-
api.xrl.us
:短链接服务提供商的 API 域名。 -
/create
:生成短链接的接口路径。
-
-d "url=原始URL"
-
功能:发送 POST 请求的正文数据(表单格式)。
-
参数:
-
url=
:服务商定义的参数名(表示要缩短的原始 URL)。 -
后面的长链接是待缩短的目标地址。
-
-d 代表"data"
-
相关文章:
PERL开发环境搭建>>Windows,Linux,Mac OS
特点 简单 快速 perl解释器直接对源代码程序解释执行,是一个解释性的语言, 不需要编译器和链接器来运行代码>>速度快 灵活 借鉴了C/C, Basic, Pascal, awk, sed等多种语言, 定位于实用性语言,既具备了脚本语言的所有功能,也添加了高级语言功能 开源.免费 没有&qu…...
【实战】渗透测试下的传输命令
目录 bitsadmin certutil curl ftp js nc perl php py scp vbs wget WindowsDefender bitsadmin 不支持https、ftp协议,php python带的服务器会出错 >bitsadmin /transfer n http://192.168.1.192/Client.exe e:\1.exe >bitsadmin /rawreturn /…...
JSON 基础知识(一)
第一部分:JSON 基础知识 📢 快速掌握 JSON!文章 视频双管齐下 🚀 如果你觉得阅读文章太慢,或者更喜欢 边看边学 的方式,不妨直接观看我录制的 JSON 课程视频!🎬 视频里会用更直观…...
nodejs:midi-writer-js 将基金净值数据转换为 midi 文件
开放式基金是没有公布每日交易量的。 /funds/data/660008.csv 文件开头: date,jz,ljjz 2016-01-04,1.1141,1.1141 2016-01-05,1.1161,1.1161 2016-01-06,1.1350,1.1350 这是一个将开放式基金数据转换为 MIDI音乐的 js 程序示例。该程序将基金净值映射为 MIDI音符的…...
从零实现Json-Rpc框架】- 项目实现 - 服务端registrydiscovery实现
📢博客主页:https://blog.csdn.net/2301_779549673 📢博客仓库:https://gitee.com/JohnKingW/linux_test/tree/master/lesson 📢欢迎点赞 👍 收藏 ⭐留言 📝 如有错误敬请指正! &…...
自适应二值化与形态学变换在图像颜色识别与替换中的应用解析
目录 前言一、自适应二值化1.1 取均值 ADAPTIVE_THRESH_MEAN_C1.2 高斯加权求和 ADAPTIVE_THRESH_GAUSSIAN_C1.2.1 一维高斯分布1.2.2 二维高速分布1.2.3 二维高斯分布权重计算规则 1.2.3.1 用户设置了σ1.2.3.2 用户没有设置σ1.3 代码二、形态学变换2.1 核 2.2 腐蚀2.3 膨胀…...
JsonCpp 处理 JSON(现代 C++ 方案)(三)
第三部分:JsonCpp 处理 JSON(现代 C++ 方案) 📢 快速掌握 JSON!文章 + 视频双管齐下 🚀 如果你觉得阅读文章太慢,或者更喜欢 边看边学 的方式,不妨直接观看我录制的 JsonCpp 课程视频!🎬 视频里会用更直观的方式讲解 JsonCpp 的核心概念、实战技巧,并配有动手演…...
flutter 曲线学习 使用第三方插件实现左右滑动
flutter 曲线的使用 实现左右滑动 TemperatureChartPage() TemperatureChartPage2() – 不太完善 方法 ChartDrawPage import package:doluyo/dly_package/widget/dly_widget.dart; import package:fl_chart/fl_chart.dart; import package:flutter/material.dart; impor…...
【WRF工具】GIS4WRF详细介绍:配置 WPS/WRF
【WRF工具】GIS4WRF详细介绍 QGIS-GIS4WRF安装(Installation)安装 QGIS安装 GIS4WRF GIS4WRF 配置(Configuration)一、如何进入配置界面二、可配置内容1️⃣ 设置工作目录2️⃣ 与 WPS/WRF 集成3️⃣ 与 NCAR 数据档案集成 参考 GIS4WRF 是一个在 QGIS 中…...
【自用记录】本地关联GitHub以及遇到的问题
最近终于又想起GitHub,想上传代码和项目到仓库里。 由于很早之前有在本地连接过GitHub(但没怎么用),现在需要重新搞起(操作忘得差不多)。 在看教程实操的过程中遇到了一些小问题,遂记录一下。 前…...
小程序中跨页面组件共享数据的实现方法与对比
小程序中跨页面/组件共享数据的实现方法与对比 在小程序开发中,实现不同页面或组件之间的数据共享是常见需求。以下是几种主要实现方式的详细总结与对比分析: 一、常用数据共享方法 全局变量(getApp())、本地缓存(w…...
ngx_http_core_merge_srv_conf
定义在 src\http\ngx_http_core_module.c static char * ngx_http_core_merge_srv_conf(ngx_conf_t *cf, void *parent, void *child) {ngx_http_core_srv_conf_t *prev parent;ngx_http_core_srv_conf_t *conf child;ngx_str_t name;ngx_http_server_name_t…...
如何在中科方德llinux系统上离线安装salt-minion
1,我的系统是什么 国产操作系统 中科方德 NFSChina Server release 4.0.240701 (RTM4-G320) 2,首先准备好两个安装包 salt-minion-2015.8.8-2.el7.noarch.rpm和salt-2015.8.8-2.el7.noarch.rpm 后者这个是前者的依赖项。 所以先安装salt-2015.8.8-2.e…...
RAG系统实战:当检索为空时,如何实现生成模块的优雅降级(Fallback)?
目录 RAG系统实战:当检索为空时,如何实现生成模块的优雅降级(Fallback)? 一、为什么需要优雅降级(Fallback)? 二、常用的优雅降级策略 策略一:预设后备提示࿰…...
输电线路航空标志球:低空飞行的安全路标 / 恒峰智慧科技
在现代社会,随着航空业的快速发展,低空飞行活动日益频繁。为了确保飞行安全,避免飞机与高压电线等障碍物发生碰撞,输电线路航空标志球应运而生。这种装置被广泛应用于高压输电线路上,尤其是超高压和跨江输电线…...
【SPP】蓝牙 SDP 协议在SPP中的互操作性解析
在蓝牙通信体系中,服务发现协议(SDP, Service Discovery Protocol)扮演着 "服务目录" 的核心角色。对于串口通信协议(SPP, Serial Port Profile)而言,SDP 服务记录是设备间建立串口连接的基础&am…...
本地部署vanna ai+通过http请求调用vanna
本地部署vanna ai ① 准备python环境,推荐最新的python12、13版本 ② 安装vanna库 我这里安装的python环境是python312 进入目录python312/Scripts,在该目录下的命令行窗口中输入以下命令:pip jinstall vanna pip install vanna③ 配置向…...
seq2seq
理解 transformer 中的 encoder decoder 详细的 transformer 教程见:【极速版 – 大模型入门到进阶】Transformer 文章目录 🌊 Encoder: 给一排向量输出另外一排向量🌊 Encoder vs. Decoder: multi-head attention vs. masked multi-head at…...
C++ ---- 虚继承
一、什么是虚继承 虚继承就是子类中只有一份间接父类的数据。用于解决多继承中的父类为非虚继承时出现的二义性问题,即菱形继承问题。继承方式需要加上virtual关键字。 二、虚继承的特性 以菱形继承为例: 1.不使用虚继承 根据输出的大小和关系图&…...
COMSOL多层圆片随机堆积三维模型
构建多层圆片随机堆积三维模型可用于材料、化工、土木、生物医学等多领域的研究,如复合材料设计、催化剂载体、颗粒物堆积研究等。本案例介绍在COMSOL内建立三维圆片堆积模型。 三维圆片堆积模型可采用CAD纤维密堆积3D插件建立,参数设置如图所示&#…...
PHP 开发API接口签名验证
就安全来说,所有客户端和服务器端的通信内容应该都要通过加密通道(HTTPS)传输,明文的HTTP通道将会是man-in-the- middle及其各种变种攻击的温床。所谓man-in-the-middle攻击简单讲就是指恶意的黑客可以在客户端和服务器端的明文通信通道上做手 脚&#x…...
Web开发-JavaEE应用ORM框架SQL预编译JDBCMyBatisHibernateMaven
知识点: 0、安全开发-JavaEE-构建工具-Maven 1、安全开发-JavaEE-ORM框架-JDBC 2、安全开发-JavaEE-ORM框架-Mybatis 3、安全开发-JavaEE-ORM框架-Hibernate 4、安全开发-JavaEE-ORM框架-SQL注入&预编译 一、演示案例-WEB开发-JavaEE-构建工具-Maven IDEA配置m…...
软考-数据库系统工程师第四版pdf
软考-数据库系统工程师第四版pdf git中的文件相对没有那么清楚,网盘的有高清版 github下载 这里我给出仓库地址 链接: https://github.com/yaodada123/ruankao-pdf https://github.com/yaodada123/ruankao-pdf gitee下载 https://gitee.com/yao-hengchao/ruank…...
扫描仪+文档pdf编辑器+pdf格式转换器
小扫描仪是一款集“扫描仪文档pdf编辑器pdf格式转换器”于一体的多功能扫描软件,软件功能丰富,而且目前是免费,功能包括扫描、编辑、转换三部分。 扫描:扫描的功能包括文档扫描、身份证扫描、护照扫描、书籍扫描、OCR和二维码。 扫…...
【stm32--HAL库DMA+USART+空闲中断不定长收发数据】
串口通信-Hal库实现不定长度收发,DMAUSART DMA串口STM32CUBEMX配置(工程创建)基础配置时钟配置工程配置 代码编写现象 DMA 在正式配置之前,我们先来一起简单了解一下DMA。DMA(Direct Memory Access,直接内…...
5G-A技术
最近的iOS 18.4 推送了 新功能,最引人注目的便是这个5G-A的这个功能,那什么是5G-A呢 ? 目前北京 四环内 还是有能显示出5G-A标志的。 5G-A 🌐 一句话概括: 5G-A 更快的速度 更低的延迟 更强的AI能力 更智能的网…...
Vue 组件 - 动态组件
Vue 渐进式JavaScript 框架 基于Vue2的学习笔记 - Vue 组件 - 动态组件 目录 动态组件 选项卡页面示例 更简单写法 增加输入框 弥补措施 总结 动态组件 选项卡页面示例 功能:选项卡功能,设置导航点击哪个显示相应页面。 设置三个全局组件&#…...
ffmpeg滤镜使用
ffmpeg实现画中画效果 FFmpeg中,可以通过overlay将多个视频流、多个多媒体采集设备、多个视频文件合并到一个界面中,生成画中画的效果 FFmpeg 滤镜 overlay 基本参数 x和y x坐标和Y坐标 eof action 遇到 eof表示时的处理方式,默认为重复。…...
【MVC简介-产生原因、演变历史、核心思想、组成部分、使用场景】
MVC简介 产生原因: MVC(Model-View-Controller)模式诞生于20世纪70年代,由Trygve Reenskaug在施乐帕克研究中心(Xerox PARC)为Smalltalk语言设计,目的是解决图形用户界面(GUI&…...
基于大模型的房间隔缺损手术全流程预测与方案优化研究报告
目录 一、引言 1.1 研究背景与意义 1.2 研究目的与目标 1.3 研究方法与创新点 二、房间隔缺损概述 2.1 房间隔缺损定义与分类 2.2 发病机制与病理生理 2.3 流行病学特征 三、大模型在房间隔缺损预测中的应用原理 3.1 大模型技术简介 3.2 数据收集与预处理 3.3 模型…...
什么是 CSSD?
文章目录 一、什么是 CSSD?CSSD 的职责 二、CSSD 是如何工作的?三、CSSD 为什么会重启节点?情况一:网络和存储都断联(失联)情况二:收到其他节点对自己的踢出通知(外部 fencing&#…...
uniapp APP端在线升级(简版)
设计思路: 1.版本比较:应用程序检查其当前版本与远程服务器上可用的最新版本 2. 更新状态指示:如果应用程序是不是最新的版本,则页面提示下载最新版本。 3.下载启动:通过plus.downloader.createDownload()启动新应用…...
2024年蓝桥杯Java B组省赛真题超详解析-分布式队列
问题:你需要回答在某个时刻,队列中有多少个元素具有可见性 方案:跟踪每个副节点已经同步到主节点队列的元素数量,并找出所有副节点中同步到的最少元素数量,这个数量即为所有副节点都已经同步的元素数量。 解析&#…...
Vue3入门
环境准备: node.js vscode or webstorm 哪个熟悉用哪个 这两个都是傻瓜式安装 浏览器直接搜索 下载即可 安装: 安装完node.js之后 按住快捷键 winR 打开命令提示符输入node 将显示版本信息 接着我们通过 vite 构建vue3工程 优点: 轻量快速的热重载(HMR…...
向量库(Vector Database)概述
向量库(Vector Database)概述 1. 核心概念 向量 高维空间中的数值数组,通常由模型(如BERT、ResNet)将非结构化数据(文本、图像等)转换为嵌入向量。 向量相似性 衡量方法:余弦相…...
Oracle迁移达梦遇中断?试试SQLark的断点续迁功能!
在企业级数据迁移项目中,如果迁移单表数据量超过亿行、占用空间超过100GB时,一旦遇到网络中断或迁移报错,往往需要整表重新迁移,导致效率低下,严重影响项目进度。针对这一痛点,SQLark 支持对 Oracle→DM 的…...
上海某海外视频平台Android高级工程师视频一面
问的问题比较细,有很多小细节在里面,平时真不一定会注意到,做一个备忘: 1.Object类里面有哪些方法? Object 类是 Java 中所有类的根类,它定义了一些基本方法,供所有类继承和重写1. 常用方法 1…...
基于yolov11的汽车损伤检测系统python源码+onnx模型+评估指标曲线+精美GUI界面
【算法介绍】 基于YOLOv11的汽车损伤检测系统是一种先进的计算机视觉技术,旨在快速准确地识别汽车的各种损伤类型。该系统利用YOLOv11模型的强大性能,实现了对车辆损伤的精确检测与分类。 该系统能够识别的损伤类型包括裂纹(crackÿ…...
华为IP(3)
DHCP Relay报文格式 DHCP Relay主要负责转发DHCP客户端与DHCP服务器之间的DHCP报文,所以DHCP Relay的报文格式只是把DHCP的报文部分字段做了相应的修改,报文格式没有发生变化 hops:表示当前DHCP报文经过DHCP中继的数目,该字段由…...
面试问题总结:qt工程师/c++工程师
C 语言相关问题答案 面试问题总结:qt工程师/c工程师 C 语言相关问题答案 目录基础语法与特性内存管理预处理与编译 C 相关问题答案面向对象编程模板与泛型编程STL 标准模板库 Qt 相关问题答案Qt 基础与信号槽机制Qt 界面设计与布局管理Qt 多线程与并发编程 目录 基础…...
【TS学习】(15)分布式条件特性
在 TypeScript 中,分布式条件类型(Distributive Conditional Types) 是一种特殊的行为,发生在条件类型作用于裸类型参数(Naked Type Parameter) 时。这种特性使得条件类型可以“分布”到联合类型的每个成员…...
四款高效数据报表工具 让数据分析更简单
概述 在数字化时代,企业和组织越来越依赖数据驱动决策,报表软件成为提高数据可视化能力、优化业务管理的关键工具。本文将为大家介绍四款功能强大的报表软件,帮助不同需求的企业找到合适的解决方案。 一、山海鲸报表 山海鲸报表是一款零代…...
QT 非空指针 软件奔溃
在用QT的实际项目中,出现如下现象: 运行软件再关闭软件,然后再运行软件会崩溃。等待5~10分钟,再运行软件,又正常,百思不得其解,后面找到原因是在头文件里定义指针变量时没有赋初nullptr&#x…...
图漾相机——C#语言属性设置
文章目录 前言1.示例程序说明2.SDK API功能介绍2.1 ListDevice2.2 Open2.3 OpenDeviceByIP2.4 Close2.5 DeviceStreamEnable2.6 DeviceStreamFormatDump2.7 DeviceStreamFormatConfig2.8 DeviceReadCurrentEnumData2.9 DeviceReadCalibData2.10 DeviceStreamOn2.11 DeviceStrea…...
WPF中viewmodel单例模式
1、单例模式介绍 单例模式是一种创建型设计模式,确保一个类只有一个实例,并提供一个全局访问点来获取这个实例。它常用于需要全局唯一访问点的场景,如配置管理、日志记录、数据库连接等。 2、WPF 中 ViewModel 的单例实现 在 WPF 中&#…...
AI比人脑更强,因为被植入思维模型【36】时光机理论思维
giszz的理解:据说是软银孙正义提出的一种思维模型,他利用同一时间内的地区差,通过引入技术、思维,在同一地区,形成了时间差。所谓商业模式,有时就是打空间差、时间差,信息差。 一、定义 时光机…...
SQL Server:用户权限
创建 & 删除 1. 创建用户命令整理 创建 admin2 用户 -- 在 master 数据库创建登录名 USE master; BEGINCREATE LOGIN [admin2] WITH PASSWORDNCljslrl0620!, DEFAULT_DATABASE[master], CHECK_EXPIRATIONOFF, CHECK_POLICYON; END;-- 在 db03 数据库创建用户并添加到相应…...
Qt之QTextEdit控制文本滚动, 停止滚动, 开始滚动, 鼠标控制滚动
对工作台文本框进行控制。含以下内容。详细说明在源码中可查看 至最底部停止滚动开始滚动 源码分两部分. .h文件和.cpp文件 MyTextEdit.h #ifndef MYTEXTEDIT_H #define MYTEXTEDIT_H#include <QObject> #include <QTextEdit> #include <QScrollBar> #includ…...
策略模式与元数据映射模式融合 JSR 380 验证规范实现枚举范围校验
类文件 Target({ElementType.METHOD,ElementType.FIELD,ElementType.ANNOTATION_TYPE,ElementType.CONSTRUCTOR,ElementType.PARAMETER,ElementType.TYPE_USE }) Retention(RetentionPolicy.RUNTIME) Documented Constraint(validatedBy {InEnumValidator.class, InEnumColle…...
9对象树(3)
目录 创建自定义的类,最主要的目的,是自定义一个析构函数,在析构函数中,完成打印.方便咱们看到最终的自动销毁对象的效果!!! 写完一个函数的声名之后, 按下 altenter, 在按下enter就可以自动的在对应的 cpp 文件中添加函数的定义了 内置类型,析构不会明…...