自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(22)
  • 收藏
  • 关注

原创 C# 关于类型系统(值类型、引用类型)的理解

比如,当值类型很大时(例如:一个大型结构体),每次传递该值都会涉及完整的内存复制。因此,在频繁传递和赋值的场景下,较大的值类型可能比引用类型更重。对于值类型(如 int、float、struct 等),传递的是值的副本,即复制数据;对于引用类型(如 class、array、string 等),传递的是对象的引用(值),而不是对象本身。结构体是值类型,经常定义字段作为数据容器,也可以有方法、属性。int: 有符号整型,占 4 个字节,取值范围是 -2,147,483,648~2,147,483,647。

2026-04-04 16:43:08 344

原创 C# 关于类(Class)的理解

成员可以是方法、属性、索引器、事件、静态成员(C#8.0+)。其中,在C#8.0版本之前,方法不能包含任何实现,在C#8.0版本开始,方法可以有默认实现。在 C# 中,字段通常是私有的 (private),通过公共属性 (public) 来暴露给外部代码。字段与属性的关系:字段是数据本体,属性是对字段的控制入口(可设置只读,可添加方法块代码等)。3). 方法 (Methods): 类的行为,通过方法来操作类的数据或执行操作。类是一种引用类型,它是定义对象数据(属性)和行为(方法)的蓝图。

2026-03-31 20:37:47 362

原创 visual stadio 2022 企业版 官方安装包

visual stadio 2022 企业版 官方安装包下载。

2026-03-07 09:44:29 215

原创 AI时代工程师生存与成长

优秀工程师的特征:喜欢优化细节、喜欢系统变清晰、喜欢问题被彻底解决;例如:文件监控工具、简易日志系统、小型HTTP服务、图片处理工具。举个例子,每周:一个功能型小项目或一个组件封装或一个算法实现。例如:自动部署工具、小型桌面软件、数据分析工具、AI辅助插件。问自己:如果AI给出的结果是错的,我能发现吗?不会思考的人 → AI放大混乱。会思考的人 → AI加速思考。不能 → AI是幻觉**写文档 → AI自动生成。否则只是练习,不是工程。调试代码 → AI辅助。做决策 → 人类仍负责。

2026-02-14 12:12:14 203

原创 C# Winform 自定义图像交互控件

2.1. 扩展为功能齐全的自定义控件,且无需额外安装库。https://pan.baidu.com/s/1NI9crIhDtqBd3wzAlg_tMQ 提取码: t76y。3.3. 缩放/平移状态统一管理:scale、offset、鼠标状态、ROI 状态清晰可维护。3.1. 控件化封装:继承 Control,可与现有 WinForms 架构自然融合。3.2. 内置位图副本用于像素访问:避免频繁锁定原始图像导致异常或性能问题。2.3. 右键菜单、ROI 逻辑、绘制逻辑均可按项目需求快速调整。

2026-02-08 10:47:50 247

原创 C# 1 关于委托和事件的理解

委托是一种强大且灵活的特性,它让方法调用变得更加灵活和动态,支持事件、回调和 LINQ 等多种应用模式。即方法中的参数类型、参数顺序、返回值类型,必须与委托兼容(支持协变与逆变)。(2)事件实际上是对委托的封装,只有事件的发布者可以触发该事件,而外部对象只能订阅。事件是基于委托实现的一种发布-订阅机制,它允许类或对象(发布者)通知其他对象(订阅者)某些事情发生了。(5)事件支持多播,也就是说,多个订阅者可以订阅同一个事件,且事件触发时会通知所有的订阅者。(8)委托解决的问题是,让“行为”成为参数。

2026-02-07 21:32:22 137

原创 C# WinForms 用资源文件做多语言 + 运行时切换语言 的标准做法

2.4、如果需要实时切换窗体的文本变化,需要重新对窗体执行资源应用(ApplyResources)以刷新控件文本。1.2、新建一个繁体中文资源文件,添加——>新建项——>找到资源文件,起名为Form1.zh-TW.resx。2.5、点击菜单切换语言。当新建一个Form或一个UserControl时,将自动生成一个.resx文件,该文件保存默认语言时的文本。常用的语言名有:zh-CN(简体中文),zh-TW(台湾繁体中文),zh-US(美国英文)3.5、这时,即可实时切换语言,又可以保存上次使用的语言。

2026-01-22 11:01:08 577 2

原创 github 加速器

本软件适用于浏览github网页,下载github资源等,所有与github相关的活动都可以流畅地使用。链接: https://pan.baidu.com/s/1CuBVof2i5einYwytkUyYew。

2026-01-21 21:15:55 424

原创 对编程感兴趣的秘诀 彼得·诺维格(曾任谷歌研发总监)

用更专业的术语来说,“个人在特定领域的最高表现水平并非通过经验积累就能自动获得,但即便是经验丰富的专家,只要通过刻意提升也能实现更高水平”(第366页)。7、掌握至少六种编程语言,具体包括:一种强调类抽象的语言(如Java或C++),一种强调函数式抽象的语言(如Lisp、ML或Haskell),一种支持语法抽象的语言(如Lisp),一种支持声明式规范的语言(如Prolog或C++ templates),以及一种强调并行性的语言(如Clojure或Go)。10、要有明智的判断,尽快退出语言标准化的工作。

2026-01-06 11:53:45 947

原创 C# 3 Linq及其相关的一切

8.3、Linq 的方法语法与查询表达式在功能上是等价的,查询表达式只是方法语法的语法糖。7.5、若扩展方法以实例的形式调用,在编译期允许的情况下,即使该实例为null,运行时不会抛出异常,而是以第一个参数null的形式调用该方法。4.6、是否为同一个匿名类型的判定规则由以下三者共同决定:属性名、属性类型、属性声明顺序,三者完全一致 ⇒ 编译器认为是同一个匿名类型。注:var 只是编译期的语法糖,并非动态类型,编译后与显式声明类型完全一致,不会影响类型安全和运行性能。5.1、表达式体的结果会作为返回值;

2025-12-29 10:54:38 983

原创 VS2019/2022配置C++ OpenCV4.10.0环境

此示例配置的是绝对地址,拷贝build文件夹到程序目录,然后配置相对地址方便项目迁移。此示例用的Debug调试模式,添加opencv_world4100d.lib。1、此示例新建C++/CLR .Netframework项目。官网链接:https://opencv.org/5、C++项目引用opencv库,读取图片文件。安装的时候请记住安装路径,此示例安装到E盘。3、配置环境变量(这步可能不是必须的)4、重启vs软件,不重启配置不生效。2、右击打开C++项目属性。2.1、添加包含目录。

2025-12-27 09:14:12 377

原创 欧姆龙Fins读写指令大全

82:读地址区(D位:02,D字:82,W位:31,C位:30,W字:B1,C字:B0);B1:读地址区(D位:02,D字:82,W位:31,C位:30,W字:B1,C字:B0);82:读地址区(D位:02,D字:82,W位:31,C位:30,W字:B1,C字:B0);B1:读地址区(D位:02,D字:82,W位:31,C位:30,W字:B1,C字:B0);46494E53:ASCII编码:FINS;46494E53:ASCII编码:FINS;46494E53:ASCII编码:FINS;

2025-12-26 21:39:48 706

原创 Modbus读写指令大全

(功能代码补充:03读多个地址,06写单个地址,10写多个地址)(功能代码补充:03读多个地址,06写单个地址,10写多个地址)(功能代码补充:03读多个地址,06写单个地址,10写多个地址)(功能代码补充:03读多个地址,06写单个地址,10写多个地址)(功能代码补充:03读多个地址,06写单个地址,10写多个地址)(功能代码补充:03读多个地址,06写单个地址,10写多个地址)01 :单元标识符(1字节),站号,或者说机器地址;01 :单元标识符(1字节),站号,或者说机器地址;

2025-12-26 21:26:25 681

原创 C# 2 泛型、可空值类型、迭代器及次要特征

o.GetType() 等同于 typeof(int),当值类型调用GetType()函数时,首先会进行装箱,但如果这是个空的类型则会抛异常。3、如果调用迭代器的MoveNext()方法结果为true,说明已移动到下一个“书签”,如果结果为false,表示序列结束。分别对应基类约束、接口约束、类型参数约束。但是,在传入编译器无法推断的类型(如null)时,需显示指定泛型参数类型,否则,报编译时错误。1、where T : class 约束引用类型,不仅可以传递类,还可以传递接口、委托、字符串、数组等。

2025-12-22 14:21:22 315

原创 C# 路径100%正确的写法

当程序A打开程序B时,如果程序B使用了引用路径,如:\Settings或Directory.GetFiles(“Settings”),此代码会被识别为程序A的相对路径。那如何编写才是使用程序B的路径呢?多存在多个路径字符组合时,很多朋友可能这样写:$“{AppDomain.CurrentDomain.BaseDirectory}\Settings”,程序运行在windows系统当然没问题,如果你的程序需要跨平台,建议使用Path.Combine函数。——不管程序运行到哪里,都将被识别为有效路径。

2025-12-15 09:32:58 248

原创 C# in depth 第4版 英文版下载

链接: https://pan.baidu.com/s/1VU2czOk1WDtKDrVEOHwa8Q 提取码: fnxm。C# in depth 第4版 英文版下载 ¥9.99。通过网盘分享的文件:C# In Depth 4.rar。

2025-10-25 08:46:02 187

原创 康耐视视觉软件(VisionPro)学习版(无需加密狗)下载

链接: https://pan.baidu.com/s/1u8yf7yFiyqVRS31P0LhZJw 提取码: 323g。通过网盘分享的文件:VisionPro。

2025-10-08 09:21:22 2856 19

原创 C# 通用上位机追溯系统(WPF)——高效、稳定、可扩展的工业级解决方案

通用上位机追溯系统,使用wpf作为ui框架,应用程序使用.NetFramework 4.8框架。具备数据保存(数据库:MySql,ORM:Sqlsugar),与PLC交互(如:Fins,CipNet),Socket(如:Tcp,Udp,Modbus)、Com(RS232,RS485)通讯,与MES(如:Http请求、Web Api)交互功能。General.Device:存放通讯设备类,如:PLC、COM、SOCKET等;General.MES:存放MES交互类,如:Http请求调用Web Api接口;

2025-03-22 19:22:11 1146 6

原创 VisualStadio2019 社区版下载

链接:https://pan.baidu.com/s/116Cljyy9i47JPPzDnFx4dA。

2024-12-22 19:55:07 1326

原创 VisualStadio2017企业版下载

链接:https://pan.baidu.com/s/1eF-qUX54_NABLomLGZ_0Fg。

2024-12-22 19:53:51 610

原创 使用任务计划定时执行程序

环境:VS2019编写控制台程序、win10新建任务计划一、新建一个控制台程序,书写创建.txt文本的程序static void Main(string[] args){string title = “定时记录日志”;string content = “你好,朋友!”;string path = @“D:\TestLog”;try{ //如果不存在就创建file文件夹 if (Directory.Exists(path) == false) { Dir

2024-12-22 19:52:16 529 1

原创 C#调用C++动态链接库(dll)的简单样例

C#调用C++动态链接库(dll)的简单样例环境:Win10、VS2017一、生成C++动态链接库dll创建动态链接库dll新建一个C++类打开FourArith.cpp文件,添加四则运算方法

2021-09-02 09:37:16 252

空空如也

空空如也

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

TA关注的人

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