<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[weixin_44001813的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/weixin_44001813</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; weixin_44001813]]></copyright><item><title><![CDATA[Unity开发笔记：将Texture2D裁剪出指定圆角用来输出png等图片]]></title><link>https://blog.youkuaiyun.com/weixin_44001813/article/details/132214794</link><guid>https://blog.youkuaiyun.com/weixin_44001813/article/details/132214794</guid><author>weixin_44001813</author><pubDate>Thu, 10 Aug 2023 17:49:07 +0800</pubDate><description><![CDATA[注意texture本身应该为支持透明的格式如TextureFormat.RGBA32，且导出为png等支持透明的格式（比如jpg不支持透明)。上述代码中Radius为圆角参数，区间为[0,0.5]，数值越大圆角越大。简单来说就是将图片分成四个区域，找出拐角处的拐子的设置为透明。如图，找到四个红色区域外边的白色区域  设置为透明即可。学习记录整理，自用，也希望能帮助到有相同需求的人。]]></description><category></category></item><item><title><![CDATA[Unity开发笔记：截取指定位置含有UI的场景截图并输出]]></title><link>https://blog.youkuaiyun.com/weixin_44001813/article/details/132191973</link><guid>https://blog.youkuaiyun.com/weixin_44001813/article/details/132191973</guid><author>weixin_44001813</author><pubDate>Wed, 09 Aug 2023 17:23:28 +0800</pubDate><description><![CDATA[UI所在的Canvas设置为RenderMode.ScreenSpaceCamera并挂载相机，然后设置该相机的渲染RenderTexture并开始render，注意这里渲染是从屏幕中心扩展到四周，也就是说RenderTexture小于屏幕的话只能看到中间部分，然后代码如下，已添加注释。为了方便，我直接使用我的图片的固定大小500*500，自用可以自行获取所需图片尺寸。函数中0、1、2三张图只是为了表明ReadPixels中坐标具体参数细节，可删去。学习记录整理，自用，也希望能帮助到有相同需求的人。]]></description><category></category></item><item><title><![CDATA[c++重载函数和虚函数（重写）为什么分别在编译和运行时候确定]]></title><link>https://blog.youkuaiyun.com/weixin_44001813/article/details/131421549</link><guid>https://blog.youkuaiyun.com/weixin_44001813/article/details/131421549</guid><author>weixin_44001813</author><pubDate>Tue, 27 Jun 2023 17:16:07 +0800</pubDate><description><![CDATA[实际上在c++中，无论重载还是重写，最终都会生成多个不同的函数，这些函数虽然在代码上看起来名字相同，实际上是名字不同的多个函数，对于重载，c++使用函数倾轧技术，在ide看来，重载的不同函数的参数和返回值都会使得经过函数倾轧后表现的不同，重写更不必说，不同虚函数表指向的函数显然不同。（2）重写（覆盖，动态联编）指的是，派生类中的函数重写了基类中的虚函数，重写的基类的中函数必须被声明为virtual，并且返回值，参数列表和基类中的函数一致；所以执行一个函数的时候，需要知道具体的函数地址，才能执行函数。]]></description><category></category></item><item><title><![CDATA[C++继承机制下析构和构造函数的执行次数与分析]]></title><link>https://blog.youkuaiyun.com/weixin_44001813/article/details/131414764</link><guid>https://blog.youkuaiyun.com/weixin_44001813/article/details/131414764</guid><author>weixin_44001813</author><pubDate>Tue, 27 Jun 2023 13:02:22 +0800</pubDate><description><![CDATA[这里leakmemory的释放由~ B来做，但是在没有将~ A设置为virtual的情况下，虽然~B没有执行，leakmemory没有被释放，但是IDE仍然认为这个B对象已经被释放，我们无法再使用这个对象，这就造成了内存泄漏。情况2中，父类A析构函数是virtual，使用虚函数机制调用子类B的析构函数，由于B类中含有A对象，根据上述析构函数调用第三条规则，故会在之后调用A的析构函数。情况1中，父类A析构函数不是virtual，故无法使用虚函数机制调用子类B的析构函数。看A加不加virtual时候的输出。]]></description><category></category></item><item><title><![CDATA[高软作业4：从需求分析到软件设计]]></title><link>https://blog.youkuaiyun.com/weixin_44001813/article/details/130956564</link><guid>https://blog.youkuaiyun.com/weixin_44001813/article/details/130956564</guid><author>weixin_44001813</author><pubDate>Tue, 30 May 2023 20:37:08 +0800</pubDate><description><![CDATA[密钥和算法协商阶段：服务器端和客户端分别发送算法协商报文给对端，服务器端和客户端利用Diffie-Hellman密钥交换算法，主机密钥对等参数，生成共享密钥和会话ID。这个其实在上面SSH的连接过程中已经体现，连接的时候就会进行用户名和密码的验证才会进行后面的操作。需求分析和逆向工程是软件开发和系统设计过程中的两个关键概念，在不同的阶段和目的下发挥着重要的作用。连接的管理和会话保持：研究如何管理远程连接和会话的生命周期，包括连接的建立和断开。研究远程连接中可能出现的错误和异常，如连接失败和网络中断。]]></description><category></category></item><item><title><![CDATA[lab4：以time/gettimeofday系统调用为例分析ARM64 Linux 5.4.34]]></title><link>https://blog.youkuaiyun.com/weixin_44001813/article/details/130821642</link><guid>https://blog.youkuaiyun.com/weixin_44001813/article/details/130821642</guid><author>weixin_44001813</author><pubDate>Tue, 23 May 2023 11:00:09 +0800</pubDate><description><![CDATA[（1）svc指令触发系统调用。（2）保存现场（el0_sync处的内核汇编代码保存异常发生时程序的执行现场），然后根据异常发生的原因（ESR_EL1寄存器）跳转到el0_svc，el0_svc处。（3）执行系统调用内核处理函数sys_syz()。]]></description><category></category></item><item><title><![CDATA[Linux课程总结报告]]></title><link>https://blog.youkuaiyun.com/weixin_44001813/article/details/130690800</link><guid>https://blog.youkuaiyun.com/weixin_44001813/article/details/130690800</guid><author>weixin_44001813</author><pubDate>Mon, 15 May 2023 19:17:16 +0800</pubDate><description><![CDATA[虚拟化是云计算的基础。虚拟化使得在一台物理服务器上可以运行多台虚拟机，虚拟机共享物理机的CPU、内存、I/O硬件资源，但逻辑上虚拟机之间是相互隔离的。OpenStack作为IaaS云操作系统，最主要的服务就是为用户提供虚拟机。在目前 OpenStack 的实际应用中，主要使用 KVM 和Xen这两种Linux虚拟化技术。虚拟化技术对Linux系统的影响主要体现在以下两个方面：资源共享与隔离。]]></description><category></category></item><item><title><![CDATA[lunix lab5：深入理解进程切换]]></title><link>https://blog.youkuaiyun.com/weixin_44001813/article/details/130376103</link><guid>https://blog.youkuaiyun.com/weixin_44001813/article/details/130376103</guid><author>weixin_44001813</author><pubDate>Tue, 25 Apr 2023 23:17:45 +0800</pubDate><description><![CDATA[call指令压栈RIP寄存器到进程切换前的prev进程内核堆栈，而ret指令出栈存入RIP寄存器的是进程切换之后的next进程的内核堆栈栈顶数据，所以 ret 恢复的就是 next 进程内核堆栈中的 rip 值，实现了 rip 值的保存与修改。swtich_to 函数会进一步调用 __switch_to_asm，而 __switch_to_asm 的实现是和体系结构强相关的。这段代码是一个用于进程切换的函数，它接收三个参数：当前的运行队列rq，当前正在运行的进程prev以及要被调度的下一个进程next。]]></description><category></category></item><item><title><![CDATA[高软Lab3：深入理解Callback函数]]></title><link>https://blog.youkuaiyun.com/weixin_44001813/article/details/129940749</link><guid>https://blog.youkuaiyun.com/weixin_44001813/article/details/129940749</guid><author>weixin_44001813</author><pubDate>Mon, 03 Apr 2023 22:00:14 +0800</pubDate><description><![CDATA[在此函数中，第二个参数为一个函数指针，传入一个Condition类型的函数，即回调函数，通过将指定的函数传入，使用业务定制化查询条件进行查询，进行解耦，将工具代码和业务代码逻辑分开。回调函数：回调函数是一个作为参数传递的函数，多使用函数指针实现，通常在发生特定事件和满足特定条件时由另外的软件模块通过函数指针的方式调用，该过程称为对事件或者条件的响应。现重点关注其查找操作。分析得知此处模拟了面向对象中继承和多态的机制，隐藏l各个模块之间的实现细节，只暴露接口。在程序中，使用了回调函数机制的函数模块如下。]]></description><category></category></item><item><title><![CDATA[linux lab3-使用vscode调试linux]]></title><link>https://blog.youkuaiyun.com/weixin_44001813/article/details/129747606</link><guid>https://blog.youkuaiyun.com/weixin_44001813/article/details/129747606</guid><author>weixin_44001813</author><pubDate>Fri, 24 Mar 2023 11:48:53 +0800</pubDate><description><![CDATA[环境：ubuntu-18.04.6（ubuntu 22.04真的是坑，之前坐别的实验就容易报一堆错误，换低级版本18和20就没那些问题，这次看同学用22.04的又是一堆报错）]]></description><category></category></item><item><title><![CDATA[剑指专项刷题笔记01-位运算和双指针]]></title><link>https://blog.youkuaiyun.com/weixin_44001813/article/details/129390076</link><guid>https://blog.youkuaiyun.com/weixin_44001813/article/details/129390076</guid><author>weixin_44001813</author><pubDate>Tue, 07 Mar 2023 19:54:49 +0800</pubDate><description><![CDATA[剑指专项刷题笔记01-位运算和双指针]]></description><category></category></item><item><title><![CDATA[软件项目的可行性分析包括哪些方面？影响决策的关键因素又是什么？]]></title><link>https://blog.youkuaiyun.com/weixin_44001813/article/details/106318037</link><guid>https://blog.youkuaiyun.com/weixin_44001813/article/details/106318037</guid><author>weixin_44001813</author><pubDate>Sun, 24 May 2020 17:34:30 +0800</pubDate><description><![CDATA[软件项目的可行性分析包括哪些方面？影响决策的关键因素又是什么？
答：
软件项目的可行性因素，从宏观影响角度分析，分为经济、技术、社会环境和人等4个要素；从风险影响角度分析，分为项目风险、商业风险、技术风险、用户风险和过程风险等。
对各种影响软件项目可行性的因素进行归纳，可以得到3个方面：经济可行性、技术可行性、风险和不确定性。
影响决策的关键因素是项目的可行与否。
例子：假设进行一个真实的项目，在我们开发一个系统时，甲方委托我们开发。如果甲方提供4万元人民币。我们需要进行成本和效益分析，比如，开发周期两个月]]></description><category></category></item><item><title><![CDATA[XP和Scrum两种开发模式的比较、辨析]]></title><link>https://blog.youkuaiyun.com/weixin_44001813/article/details/106315678</link><guid>https://blog.youkuaiyun.com/weixin_44001813/article/details/106315678</guid><author>weixin_44001813</author><pubDate>Sun, 24 May 2020 15:29:38 +0800</pubDate><description><![CDATA[XP和Scrum两种开发模式的比较、辨析
XP开发模式简介
XP是Extreme programming的缩写，即极限编程，是一种软件工程方法学，也是敏捷软件开发中最富有成效的几种方法之一。
XP的工作流程
XP工作流程的第一步就是收集用户故事，且用户故事由用户编写，也要得到用户的确认，这可以理解为XP的需求获取方式。
就是要制定发布计划，该过程确定的是在系统某个发布版本应该完成哪些用户故事，开发需要经过数次迭代，而每次迭代中都会完成一部分用户故事。
就是具体每次迭代开发过程要做的事，包括计划（也即确定当次]]></description><category></category></item><item><title><![CDATA[Python笔记: 读取txt，excel，csv文件并显示；读取一幅彩色图形并显示，同时进行灰度化，并对该图像进行图像增强]]></title><link>https://blog.youkuaiyun.com/weixin_44001813/article/details/106002904</link><guid>https://blog.youkuaiyun.com/weixin_44001813/article/details/106002904</guid><author>weixin_44001813</author><pubDate>Fri, 08 May 2020 17:56:49 +0800</pubDate><description><![CDATA[目标任务：

读取txt，excel，csv文件并显示
读取一幅彩色图形并显示，同时进行灰度化，并对该图像进行图像增强

配置：python3.6、pip20.1
import csv
import xlrd
#txt
with open(r"C:/Users/Administrator/Desktop/expir1_txt.txt", "r") as f:
    data = f.read()
    print(data)
    for i in range(2):
        print("\]]></description><category></category></item><item><title><![CDATA[滚动计划方法、WBS方法、网络计划方法：理解三种计划方法并比较优缺点]]></title><link>https://blog.youkuaiyun.com/weixin_44001813/article/details/105471414</link><guid>https://blog.youkuaiyun.com/weixin_44001813/article/details/105471414</guid><author>weixin_44001813</author><pubDate>Sun, 12 Apr 2020 16:29:25 +0800</pubDate><description><![CDATA[1、滚动计划方法：一种动态编制计划的方法，它按照“近细远粗”的原则制定一定时间的计划，然后按照计划的执行情况和环境变化，调整和修改未来的计划，并逐渐向后移动。
优点：灵活、适应性强，且具有稳定性和可操作性，从而达到动态平衡，紧密链接了长短期计划，能很好地发挥计划在知道项目实施中的作用。
缺点：降低了计划的严肃性。
2、WBS方法：将复杂的问题分解为简单的问题，然后更加分解的结果进行计划的方法。
优...]]></description><category></category></item><item><title><![CDATA[二分查找：理解并活用变量以解决两类二分查找问题]]></title><link>https://blog.youkuaiyun.com/weixin_44001813/article/details/105335704</link><guid>https://blog.youkuaiyun.com/weixin_44001813/article/details/105335704</guid><author>weixin_44001813</author><pubDate>Sun, 05 Apr 2020 23:53:35 +0800</pubDate><description><![CDATA[什么是二分查找：
二分查找是也称折半查找（Binary Search），它是一种效率较高的查找方法，是计算机科学中最基本、最有用的算法之一。 它描述了在有序集合中搜索特定值的过程。
二分查找中使用的术语：

目标 Target —— 你要查找的值
索引 Index —— 你要查找的当前位置
左、右指示符 Left，Right —— 我们用来维持查找空间的指标
中间指示符 Mid —— 我们用来应用...]]></description><category></category></item><item><title><![CDATA[c++制作简单支票计算脚本（回溯+剪枝）]]></title><link>https://blog.youkuaiyun.com/weixin_44001813/article/details/105176986</link><guid>https://blog.youkuaiyun.com/weixin_44001813/article/details/105176986</guid><author>weixin_44001813</author><pubDate>Sun, 29 Mar 2020 13:02:31 +0800</pubDate><description><![CDATA[前些天我的亲戚找到我，说认清我给他做一个简单支票计算脚本，要求如下：
输入不同数量的支票，每张支票只能用一次，给定一个目标数，求出用已给支票组合出目标数的所有组合方式，如果无解，给出可解的低于该目标数的最大数字的所有解。
例如：

也就是求数字的所有组合问题。
思路是回溯和剪枝。
算法如下：
class Solution {
private:
    vector&lt;int&gt; candi...]]></description><category></category></item><item><title><![CDATA[修道士和野人问题：所有解、启发求解、简单界面]]></title><link>https://blog.youkuaiyun.com/weixin_44001813/article/details/104891315</link><guid>https://blog.youkuaiyun.com/weixin_44001813/article/details/104891315</guid><author>weixin_44001813</author><pubDate>Mon, 16 Mar 2020 08:48:45 +0800</pubDate><description><![CDATA[一.作业任务
修道士和野人问题：设有三个修道士和3个野人来到河边，打算用一条船从河的左岸渡到河的右岸去。但该船每次只能装载两个人，在任何岸边野人的数目都不得超过修道士的人数，否则修道士就会被野人吃掉。假设野人服从任何一种过河安排，请规划出使全部6人安全过河的方案。
问题提示：应用状态空间表示和搜索方法时，可用（Nm，Nc）来表示状态描述，其中Nm，Nc分别为传教士和野人的人数。初始状态为（3，3）...]]></description><category></category></item><item><title><![CDATA[从函数定义上彻底看懂++i和i++的三个区别]]></title><link>https://blog.youkuaiyun.com/weixin_44001813/article/details/104786068</link><guid>https://blog.youkuaiyun.com/weixin_44001813/article/details/104786068</guid><author>weixin_44001813</author><pubDate>Tue, 10 Mar 2020 23:27:03 +0800</pubDate><description><![CDATA[三个区别：

返回值上：i++返回原来的值，++i返回加1后的值。
语法上：i++不能作为左值，++i可以。
效率差异：++i效率更高，i++虽然效率较差但更符合人类思维习惯。

接下来从定义上做分析：
++

...]]></description><category></category></item><item><title><![CDATA[C++中内联函数的解析和运用]]></title><link>https://blog.youkuaiyun.com/weixin_44001813/article/details/104626701</link><guid>https://blog.youkuaiyun.com/weixin_44001813/article/details/104626701</guid><author>weixin_44001813</author><pubDate>Tue, 03 Mar 2020 10:49:31 +0800</pubDate><description><![CDATA[C++中，类的成员函数必须在类内声明，但是类的成员函数的定义可以发生在类的内部和外部。在类的外部定义成员时，需要使用域名解析符::，它连接类名和函数名，指明当前函数属于哪个类。
在类内外定义成员函数的区别：类内定义的成员函数会自动成为内联函数，类体外定义的则不会如此（可以在类内声明函数的时候使用inline关键字使得类外定义的成员函数也成为内联函数）。实际开发中，为了避免过多过长的内联函数增大可行...]]></description><category></category></item></channel></rss>