<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Nine_CC的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/Nine_CC</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; Nine_CC]]></copyright><item><title><![CDATA[【C++11智能指针】unique_ptr]]></title><link>https://blog.youkuaiyun.com/Nine_CC/article/details/128989154</link><guid>https://blog.youkuaiyun.com/Nine_CC/article/details/128989154</guid><author>Nine_CC</author><pubDate>Mon, 13 Feb 2023 12:29:12 +0800</pubDate><description><![CDATA[unique_ptr概述、初始化、常用函数release() 、reset()、get()、swap()、返回unique_ptr、删除器、大小]]></description><category></category></item><item><title><![CDATA[int、uint类型的比较与加减]]></title><link>https://blog.youkuaiyun.com/Nine_CC/article/details/128953951</link><guid>https://blog.youkuaiyun.com/Nine_CC/article/details/128953951</guid><author>Nine_CC</author><pubDate>Thu, 09 Feb 2023 16:07:26 +0800</pubDate><description><![CDATA[int与uint比较时会把int转换成uint，一个负的int转换成uint会溢出。
vector.size()的返回值类型是 size_type ，也就是容器中 typedef 之后的 size_t，而 size_t 的类型是：unsigned int]]></description><category></category></item><item><title><![CDATA[序列二次规划——SQP]]></title><link>https://blog.youkuaiyun.com/Nine_CC/article/details/120186400</link><guid>https://blog.youkuaiyun.com/Nine_CC/article/details/120186400</guid><author>Nine_CC</author><pubDate>Sat, 11 Sep 2021 19:26:50 +0800</pubDate><description><![CDATA[1. 序列二次规划算法简介
非线性规划问题是目标函数或约束条件中包含非线性函数的规划问题。一般说来，求解非线性规划问题比求解线性规划问题困难得多。而且，不像线性规划有单纯形法这一通用方法，非线性规划目前还没有适用于各种问题的一般算法，已有的各种方法都有其特定的适用范围。
利用间接法求解最优化问题的途径一般有两种：一种是在可行域内使目标函数下降的迭代算法，如可行点法；另一种是利用目标函数和约束条件构造增广目标函数，借此将约束最优化问题转化为无约束最优化问题，如罚函数法、乘子法、序列二次规划法等。
序列二次规划]]></description><category></category></item><item><title><![CDATA[MATLAB绘图 最大化全屏后保存]]></title><link>https://blog.youkuaiyun.com/Nine_CC/article/details/119697863</link><guid>https://blog.youkuaiyun.com/Nine_CC/article/details/119697863</guid><author>Nine_CC</author><pubDate>Sat, 14 Aug 2021 13:32:49 +0800</pubDate><description><![CDATA[MATLAB绘图 最大化全屏后保存一、绘图[^1]二、图例[^2]添加图例的方式一：添加图例的方式二设置图例的排列方式图例的位置和列数显示指定曲线的图例图例背景和轮廓三、保存[^3]参考资料欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题，有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能，丰富你的文章UML 图]]></description><category></category></item><item><title><![CDATA[C语言结构体能否整体赋值]]></title><link>https://blog.youkuaiyun.com/Nine_CC/article/details/108347390</link><guid>https://blog.youkuaiyun.com/Nine_CC/article/details/108347390</guid><author>Nine_CC</author><pubDate>Tue, 01 Sep 2020 17:54:17 +0800</pubDate><description><![CDATA[C语言结构体的能否整体赋值
先放结论
可以将一个结构体变量的值赋给另一个具有相同结构的结构体变量，但是需要满足一个条件。
整体赋值规则
ansi/iso C规定：“相同类型的结构体是可以直接赋值的”；
合法赋值： 如date1和date2都是date结构体类型的变量，可以这样赋值：date1= date2；
非法赋值： 假设申明了两个成员列表完全一样的两个结构体类型（dataA，dateB），即使他们的成员列表是一样的，编译器会当作两个完全不同的类型，令两个结构体类型的变量间赋值，则是非法的。
但是这种问题]]></description><category></category></item><item><title><![CDATA[matlab突然打不开的解决办法]]></title><link>https://blog.youkuaiyun.com/Nine_CC/article/details/107531752</link><guid>https://blog.youkuaiyun.com/Nine_CC/article/details/107531752</guid><author>Nine_CC</author><pubDate>Thu, 23 Jul 2020 11:12:45 +0800</pubDate><description><![CDATA[matlab突然打不开的解决办法
情况：
问题：一开始用的好好的，中途关了一次MATLAB后再也打不开，DOS窗口闪一下就没有了。
结论：三步解决matlab突然打不开的问题。
环境：win7+64位 MATLAB 2018b。
方法：
可能是 Windows系统预设文件（preferences）被损坏，需要清除并重设：
a) 进入Application Data文件夹
由于此文件夹是一个隐藏文件夹，可以直接在Windows屏幕左下角的搜索栏里输入“%AppData%”进入当前账户的ApplicationD]]></description><category></category></item><item><title><![CDATA[分离轴定理及向量应用]]></title><link>https://blog.youkuaiyun.com/Nine_CC/article/details/107366455</link><guid>https://blog.youkuaiyun.com/Nine_CC/article/details/107366455</guid><author>Nine_CC</author><pubDate>Wed, 15 Jul 2020 18:36:52 +0800</pubDate><description><![CDATA[分离轴定理及向量应用
通过判断任意两个 凸多边形 在任意角度下的投影是否均存在重叠，来判断是否发生碰撞。若在某一角度光源下，两物体的投影存在间隙，则为不碰撞，否则为发生碰撞。
算法简述1
从根本上来讲，分离轴定理（以及其他碰撞算法）的用途就是去检测并判断两个图形之间是否有间隙。分离轴定理中用到的方法使算法本身显得十分独特。
我所听到过分离轴定理的最好类比方式是这样的：
假想你拿一个电筒从不同的角度照射到两个图形上，那么会有怎样的一系列的阴影投射到它们之后的墙壁上呢？

如果你用这个方式从每一个角度上对这两个]]></description><category></category></item><item><title><![CDATA[C++_vector操作]]></title><link>https://blog.youkuaiyun.com/Nine_CC/article/details/107214121</link><guid>https://blog.youkuaiyun.com/Nine_CC/article/details/107214121</guid><author>Nine_CC</author><pubDate>Wed, 08 Jul 2020 20:40:56 +0800</pubDate><description><![CDATA[1、vector
1.1 vector 说明

vector是向量类型，可以容纳许多类型的数据，因此也被称为容器
(可以理解为动态数组，是封装好了的类）
进行vector操作前应添加头文件#include 

1.2 vector初始化
方式1.
//定义具有10个整型元素的向量（尖括号为元素类型名，它可以是任何合法的数据类型），不具有初值，其值不确定
vector&lt;int&gt;a(10);

方式2.
//定义具有10个整型元素的向量，且给出的每个元素初值为1
vector&lt;int&gt;a]]></description><category></category></item><item><title><![CDATA[C++的get()函数使用详解]]></title><link>https://blog.youkuaiyun.com/Nine_CC/article/details/107188661</link><guid>https://blog.youkuaiyun.com/Nine_CC/article/details/107188661</guid><author>Nine_CC</author><pubDate>Tue, 07 Jul 2020 20:08:34 +0800</pubDate><description><![CDATA[C++的get()函数使用详解
C++ get()函数
get()函数是cin输入流对象的成员函数，它有3种形式：

无参数的；
有一个参数的；
有3个参数的。

1) 无参数的
其调用形式为
cin.get()

用来从指定的输入流中提取一个字符（包括空白字符），函数的返回值就是读入的字符。 若遇到输入流中的文件结束符，则函数值返回文件结束标志EOF(End Of File)，一般以-1代表EOF，用-1而不用0或正值，是考虑到不与字符的ASCII代码混淆，但不同的C ++系统所用的EOF值有可能不同。
]]></description><category></category></item><item><title><![CDATA[C++ ifstream eof()的使用]]></title><link>https://blog.youkuaiyun.com/Nine_CC/article/details/107166518</link><guid>https://blog.youkuaiyun.com/Nine_CC/article/details/107166518</guid><author>Nine_CC</author><pubDate>Mon, 06 Jul 2020 20:42:07 +0800</pubDate><description><![CDATA[C++ ifstream eof() 的使用
eof() 的使用方法1
ifstream.eof() 读到文件结束符时返回true。
大家可能有一个误区，认为读到文件结束符就是读到文件的最后一个字符。
其实不然，文件结束符是文件最后一个字符的下一个字符0xFF，eof() 读到文件结束符0xFF时返回true。
代码验证1
先来看看如下这段代码2：
#include &lt;iostream&gt;
#include &lt;fstream&gt;
#include &lt;string&gt;
using]]></description><category></category></item><item><title><![CDATA[C++ 中c_str()的用法详解]]></title><link>https://blog.youkuaiyun.com/Nine_CC/article/details/107094769</link><guid>https://blog.youkuaiyun.com/Nine_CC/article/details/107094769</guid><author>Nine_CC</author><pubDate>Thu, 02 Jul 2020 23:02:03 +0800</pubDate><description><![CDATA[c_str()的用法
C中没有string，所以函数c_str()就是将C++的string转化为C的字符串数组，c_str()生成一个const char *指针，指向字符串的首地址。
下文通过3段简单的代码比较分析，具体说明c_str()的使用方法和注意事项。
代码11
首先简单上一段代码看效果：
#include &lt;iostream&gt;
#include &lt;string&gt;
using namespace std;
 
int main()
{
	const char *c;
	s]]></description><category></category></item><item><title><![CDATA[C++ 使用ifstream.getline()读取文件内容]]></title><link>https://blog.youkuaiyun.com/Nine_CC/article/details/107072612</link><guid>https://blog.youkuaiyun.com/Nine_CC/article/details/107072612</guid><author>Nine_CC</author><pubDate>Wed, 01 Jul 2020 22:59:22 +0800</pubDate><description><![CDATA[C++ 使用ifstream.getline()
C++ 通过以下几个类支持文件的输入输出：
ofstream: 写操作（输出）的文件类 (由ostream引申而来)
ifstream: 读操作（输入）的文件类(由istream引申而来)
fstream: 可同时读写操作的文件类 (由iostream引申而来)
所有的I/O都以这个“流”类为基础的。
下文对ifstream.getline()的用法进行了总结1。
#include &lt;iostream&gt;
#include &lt;fstream&]]></description><category></category></item><item><title><![CDATA[for循环中i++和++i的对比 C语言]]></title><link>https://blog.youkuaiyun.com/Nine_CC/article/details/106659393</link><guid>https://blog.youkuaiyun.com/Nine_CC/article/details/106659393</guid><author>Nine_CC</author><pubDate>Wed, 10 Jun 2020 10:24:49 +0800</pubDate><description><![CDATA[C语言 for循环中i++和++i的比较
for循环
for (语句1; 语句2; 语句3)
{
循环体
}
语句 1 ：初始化，在循环体开始前执行
语句 2 ：定义运行循环体的条件
语句 3 ：在循环体已被执行之后执行
i++与++i的异同
for（i = 1， i &lt; n,   i++） VS  for（i = 1， i &lt; n,   ++i），运算结果相同，运算时间不同。




for循环中 i++与++i
i++
++i




运算结果
相同
相同


运算时间
长
短


运算结果]]></description><category></category></item><item><title><![CDATA[教你彻底学会动态规划——入门篇]]></title><link>https://blog.youkuaiyun.com/Nine_CC/article/details/106630106</link><guid>https://blog.youkuaiyun.com/Nine_CC/article/details/106630106</guid><author>Nine_CC</author><pubDate>Mon, 08 Jun 2020 23:09:22 +0800</pubDate><description><![CDATA[原文链接：https://blog.youkuaiyun.com/baidu_28312631/article/details/47418773
动态规划相信大家都知道，动态规划算法也是新手在刚接触算法设计时很苦恼的问题，有时候觉得难以理解，但是真正理解之后，就会觉得动态规划其实并没有想象中那么难。网上也有很多关于讲解动态规划的文章，大多都是叙述概念，讲解原理，让人觉得晦涩难懂，即使一时间看懂了，发现当自己做题的时候又会觉得无所适从。我觉得，理解算法最重要的还是在于练习，只有通过自己练习，才可以更快地提升。话不多说，接]]></description><category></category></item><item><title><![CDATA[缓和曲线——回旋曲线的计算]]></title><link>https://blog.youkuaiyun.com/Nine_CC/article/details/106086353</link><guid>https://blog.youkuaiyun.com/Nine_CC/article/details/106086353</guid><author>Nine_CC</author><pubDate>Tue, 12 May 2020 23:12:49 +0800</pubDate><description><![CDATA[为不枉费半天的查询、验证工作，也为方便同仁参考，本文介绍基础的回旋线计算过程及代码，本次计算未涉及坐标变换。]]></description><category></category></item><item><title><![CDATA[基于回旋曲线的平行泊车路径规划]]></title><link>https://blog.youkuaiyun.com/Nine_CC/article/details/106022745</link><guid>https://blog.youkuaiyun.com/Nine_CC/article/details/106022745</guid><author>Nine_CC</author><pubDate>Sun, 10 May 2020 17:48:49 +0800</pubDate><description><![CDATA[综合考虑汽车运动学约束、泊车过程中碰撞约束和计算实时性等要求，对基于回旋曲线的平行泊车路径规划方法进行了详细分析。
1、基于圆弧-直线组合方式推导出平行泊车可行泊车起始区域边界；
2、固定回旋曲线的分析；
3、使用回旋曲线修正原始圆弧-直线路径；
4、通过对固定回旋曲线的旋转和翻转变换完成曲率连续的平行泊车路径的设计，避免原地转向现象；
5、根据修正路径的变化，对可行泊车起始区域边界进行了修正。]]></description><category></category></item><item><title><![CDATA[浮点数据的精度分析]]></title><link>https://blog.youkuaiyun.com/Nine_CC/article/details/105822066</link><guid>https://blog.youkuaiyun.com/Nine_CC/article/details/105822066</guid><author>Nine_CC</author><pubDate>Tue, 28 Apr 2020 19:42:34 +0800</pubDate><description><![CDATA[浮点数据的精度
如果浮点算术计算的结果不如预期的精确，可能是由于您的计算机硬件的限制所致。由于硬件缺乏足够的位而无法呈现具有完美精度的结果，计算机可能会将结果值截断，使得结果值不够准确。
双精度数的精度
由于双精度数的数量有限，因此您无法在双精度存储中表示所有数值。在任何计算机上，每个双精度数和下一个更大的双精度数之间都存在一个较小的间隔。您可以使用 eps 函数确定此间隔的大小，该大小限制了您的...]]></description><category></category></item><item><title><![CDATA[MATLAB中的数值类型]]></title><link>https://blog.youkuaiyun.com/Nine_CC/article/details/105816789</link><guid>https://blog.youkuaiyun.com/Nine_CC/article/details/105816789</guid><author>Nine_CC</author><pubDate>Tue, 28 Apr 2020 19:39:36 +0800</pubDate><description><![CDATA[MATLAB中的数值类型
浮点数
MATLAB® 以双精度或单精度格式表示浮点数。默认为双精度，可以通过一个简单的转换函数将任何数值转换为单精度数值（single（））。
浮点数的定义

双精度浮点
MATLAB 根据适用于双精度的 IEEE® 754 标准
来构造双精度（即 double）数据类型。以 double 形式存储的任何值都需要 64 位。





位
含义




63
符号（0 ...]]></description><category></category></item><item><title><![CDATA[在MATLAB中定义结构体数组 -- 支持代码生成]]></title><link>https://blog.youkuaiyun.com/Nine_CC/article/details/105797373</link><guid>https://blog.youkuaiyun.com/Nine_CC/article/details/105797373</guid><author>Nine_CC</author><pubDate>Mon, 27 Apr 2020 20:02:37 +0800</pubDate><description><![CDATA[MATLAB中定义结构体数组
最近使用MATLAB代码生成，结构体数组的问题困扰许久，先将支持代码生成的结构体数组创建方法总结如下，主要参考MATLAB帮助文档。
0. MATLAB中的结构体
结构体是使用被称为字段的数据容器将相关数据组合在一起的一种数据类型。每个字段都可以包含任意类型或任意大小的数据。
例：
将患者记录存储在含有字段 name、billing 和 test 的标量结构体中。

...]]></description><category></category></item><item><title><![CDATA[整型与浮点型在计算机中的表示与存储]]></title><link>https://blog.youkuaiyun.com/Nine_CC/article/details/105690996</link><guid>https://blog.youkuaiyun.com/Nine_CC/article/details/105690996</guid><author>Nine_CC</author><pubDate>Wed, 22 Apr 2020 19:46:30 +0800</pubDate><description><![CDATA[在计算机储存系统里面，算术类型可以分为两类：整型(intergral type，包括字符和布尔类型在内)和浮点型。
下面先来看一个例子程序：
#include &lt;stdio.h&gt;
　　void main(void){
　　　　int num=9; /* num是整型变量，设为9 */
　　　　float* pFloat=&amp;num; /* pFloat表示num的内存地址，但是设...]]></description><category></category></item></channel></rss>