<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[HelloElite的专栏]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/HelloElite</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; HelloElite]]></copyright><item><title><![CDATA[matplotlib-show for loop]]></title><link>https://blog.youkuaiyun.com/HelloElite/article/details/78650931</link><guid>https://blog.youkuaiyun.com/HelloElite/article/details/78650931</guid><author>HelloElite</author><pubDate>Tue, 28 Nov 2017 01:50:36 +0800</pubDate><description><![CDATA[https://stackoverflow.com/questions/11874767/real-time-plotting-in-while-loop-with-matplotlib]]></description><category></category></item><item><title><![CDATA[svo中的shi-tomas score]]></title><link>https://blog.youkuaiyun.com/HelloElite/article/details/78445971</link><guid>https://blog.youkuaiyun.com/HelloElite/article/details/78445971</guid><author>HelloElite</author><pubDate>Sat, 04 Nov 2017 21:00:58 +0800</pubDate><description><![CDATA[图像I中x处  的shi-tomas score 其实就是 I关于x的hessian矩阵的较小的特征值。


一般光流法中最小化的是光度误差（成像误差） argmin_x  |I(x)-J(p)|^2，
高斯牛顿法中   每次的更新步骤为J^t J dx = -res J  
而  shi-tomas score 为H=J^t J 的特征值中较小的那个。
（为啥该值越大说明跟踪效果越好]]></description><category></category></item><item><title><![CDATA[c++的数组与指针]]></title><link>https://blog.youkuaiyun.com/HelloElite/article/details/78144787</link><guid>https://blog.youkuaiyun.com/HelloElite/article/details/78144787</guid><author>HelloElite</author><pubDate>Sat, 30 Sep 2017 18:36:58 +0800</pubDate><description><![CDATA[前记：
stage 1:最开始以为数组和指针是可以等价的，(int  a[4],*b=a; 用a[1]和b[1]访问的是同一个元素)。因此就自然而然地以为高维数组等价于高级指针
stage 2:开始听到说数组与指针的区别，区别之一在于数组名是不可更改的，即上述的a更像一个const point（指针常量），可以修改所指向的值但不能修改自己的值。
stage 3:碰到新问题：将多维数组名作为参]]></description><category></category></item><item><title><![CDATA[关于c++多态性实现的理解过程（给自己看的总结，比较跳跃）]]></title><link>https://blog.youkuaiyun.com/HelloElite/article/details/70339539</link><guid>https://blog.youkuaiyun.com/HelloElite/article/details/70339539</guid><author>HelloElite</author><pubDate>Fri, 21 Apr 2017 21:27:03 +0800</pubDate><description><![CDATA[之前在刚接触c++多态性的时候，关于为什么基类指针指向派生类对象，调用的是派生类的虚函数而不是基类的虚函数这一点，脑子的第一反应就是指针。用一个东西做多件事这种抽象性，很明显就是指针的行事作风。但是又没个具体的概念。
如果用函数指针，怎么实现呢？很简单，假设虚函数的变量名都对应一个成员变量，在基类的函数指针成员变量里填上对应函数的入口地址，派生类填上另一个函数地址，那就实现多态性了嘛。
再想想]]></description><category></category></item><item><title><![CDATA[为什么构造函数中调用的虚函数不具有多态性？]]></title><link>https://blog.youkuaiyun.com/HelloElite/article/details/70339513</link><guid>https://blog.youkuaiyun.com/HelloElite/article/details/70339513</guid><author>HelloElite</author><pubDate>Fri, 21 Apr 2017 21:13:35 +0800</pubDate><description><![CDATA[effective c++ 的item9中提到，不要在构造函数中调用虚函数，因为此时的虚函数不具有多态性。  给出的原因是说构造基类的时候，还未初始化派生类的成员变量。而网上很多说法说是虚表未建立。
其实，结合类的内存模型，再稍加分析，很容易可以找出更具体的原因。具有虚函数的类的内存结构里除了非静态变量，还有一个虚指针，指向了虚表。  网上说的虚表为建立的说法是不合适的，因为同一个类的所有实例共]]></description><category></category></item><item><title><![CDATA[merge two sort list-leetcode  有序链表合并的二级指针简洁非递归解法]]></title><link>https://blog.youkuaiyun.com/HelloElite/article/details/65631624</link><guid>https://blog.youkuaiyun.com/HelloElite/article/details/65631624</guid><author>HelloElite</author><pubDate>Fri, 24 Mar 2017 15:49:29 +0800</pubDate><description><![CDATA[【注，本方法并没有在效率上优于同类非递归解法，只是统一了部分逻辑，增加了代码的简洁】
记得当初上c++课的时候，Mr.Lu提到过，链表里因为头指针是指针而非节点的缘故，因此在很多时候处理链表时需要写不同的代码处理头指针Node*和后续的Node。但是当引入二级指针之后，很多逻辑又能统一。因为一般对指针进行重绑定的时候是在Node结构体中的Node*中，这跟头指针是一致的。


合并两个有序]]></description><category></category></item><item><title><![CDATA[candy-leetcode   ：只需要遍历一遍的解法]]></title><link>https://blog.youkuaiyun.com/HelloElite/article/details/65630796</link><guid>https://blog.youkuaiyun.com/HelloElite/article/details/65630796</guid><author>HelloElite</author><pubDate>Fri, 24 Mar 2017 15:33:16 +0800</pubDate><description><![CDATA[注；绝大部分解法都是O(n)的复杂度，但是可能需要扫描多遍。 

本方法只需要从左到右扫描一遍，因此在数据量大的时候应该是会有优势的。但复杂度也是O(n)

版本1：寻找局部最高点和最低点，局部最低点取值为1，并向两边逐1扩展；局部最高点取左右极限(虽然不是极限的概念）的最大值。

版本2：

基本思路：从上面的方法可以发现：那么从左往右扫描时，可以确定递增序列中每个位置该分配多少]]></description><category></category></item><item><title><![CDATA[c++ 字符集]]></title><link>https://blog.youkuaiyun.com/HelloElite/article/details/51672979</link><guid>https://blog.youkuaiyun.com/HelloElite/article/details/51672979</guid><author>HelloElite</author><pubDate>Tue, 14 Jun 2016 17:37:15 +0800</pubDate><description><![CDATA[【问题来源： 使用qt查找html文件中的»(\u00BB)符号时总是失败。 代码示例 find("»",context) 其中context为QString类型，由文件输入得到。】


一般来说，c++从源代码到执行的过程中涉及到以下3个字符集：1.源代码的字符集  
2.可执行文件的字符集  3.界面使用的字符集（特别体现在console中）。
源代码字符集，即源字符集，为源文件的编]]></description><category></category></item><item><title><![CDATA[问题]]></title><link>https://blog.youkuaiyun.com/HelloElite/article/details/51549327</link><guid>https://blog.youkuaiyun.com/HelloElite/article/details/51549327</guid><author>HelloElite</author><pubDate>Tue, 31 May 2016 21:35:42 +0800</pubDate><description><![CDATA[1. qt creator生成的自定义插件dll文件无法被qt creator识别
环境： qt-5.5 64bit 
qt_creator 32bit
原因： 生成的dll为64位的，无法被32位程序使用


解决方法： 统一位数。用32为的qt库生成个32位dll，或者安装64位qt creator


2.vs环境下开发qt，无法用win32平台的配置环境
原因:还是qt]]></description><category></category></item><item><title><![CDATA[qt-vs2010 手动添加新的qt类时，无法生成moc文件的解决]]></title><link>https://blog.youkuaiyun.com/HelloElite/article/details/46987077</link><guid>https://blog.youkuaiyun.com/HelloElite/article/details/46987077</guid><author>HelloElite</author><pubDate>Tue, 21 Jul 2015 15:38:33 +0800</pubDate><description><![CDATA[过程 http://blog.sina.com.cn/s/blog_5e42f31a0100y52r.html 提到的：

6. 在类声明的开始位置必须加上
 Q_OBJECT 语句，它将告诉编译器在编译之前必须先应用 moc 工具进行扩展，从而才能够使用singal和slot机制。

VS中使用QT代码创建界面，无法实现SLOT函数，解决方法：
1).右击.h文件（使用QT代码创建界]]></description><category></category></item><item><title><![CDATA[qt- thread —— 关于槽函数所在线程的问题]]></title><link>https://blog.youkuaiyun.com/HelloElite/article/details/46944845</link><guid>https://blog.youkuaiyun.com/HelloElite/article/details/46944845</guid><author>HelloElite</author><pubDate>Sat, 18 Jul 2015 19:21:56 +0800</pubDate><description><![CDATA[背景： 利用线程，串行发送4个http请求并接受数据
子类化QThread得到downlaodThread ，利用downloadThread进行网络通信。
downThread结构：在run函数中发送http get请求，将finished()信号与槽函数httpFinished()相连。 同时开启事件循环。
部分代码：
qnam=new QNetworkAccessManager();]]></description><category></category></item><item><title><![CDATA[poj 1013——用运算模拟变换操作]]></title><link>https://blog.youkuaiyun.com/HelloElite/article/details/46860251</link><guid>https://blog.youkuaiyun.com/HelloElite/article/details/46860251</guid><author>HelloElite</author><pubDate>Mon, 13 Jul 2015 11:21:27 +0800</pubDate><description><![CDATA[算法：
1.将所有up组左右对换转换为down，并统计down的组数，记做n。 此时三个输入仅可能有even和down两种情况。
2.even中的元素为真硬币。将所有down中元素为真硬币的去掉。
3.down中的同一侧出现的次数为n的元素则为假硬币，并通过假硬币在左侧或是右侧判断heavy or light。


该算法的一种代码实现如下：
一、初始化：ans[12]所有元素为1.]]></description><category></category></item><item><title><![CDATA[opengl下缩放与拖动的问题记录]]></title><link>https://blog.youkuaiyun.com/HelloElite/article/details/46811325</link><guid>https://blog.youkuaiyun.com/HelloElite/article/details/46811325</guid><author>HelloElite</author><pubDate>Thu, 09 Jul 2015 02:02:03 +0800</pubDate><description><![CDATA[1.在设计地图的缩放与拖动时，发生了若缩放1/2后，拖动地图时，鼠标移动的距离是实际移动的位移的1/2。 究其原因，在于gltranslate函数的调用位置。
 
拖动的实现如下：将拖动前后鼠标的屏幕坐标转换为世界坐标，计算位移x后，调用gltranslate函数移动x位移。
先有如下讨论（1）：
又因为缩放与拖动操作的对应性：如果先缩放地图，后拖动地图。由于opengl命令与实际操作反序]]></description><category></category></item><item><title><![CDATA[vs2010下qt的intellisense]]></title><link>https://blog.youkuaiyun.com/HelloElite/article/details/46779847</link><guid>https://blog.youkuaiyun.com/HelloElite/article/details/46779847</guid><author>HelloElite</author><pubDate>Mon, 06 Jul 2015 22:19:42 +0800</pubDate><description><![CDATA[在vs下写qt程序时，发现用include命令无法自动补齐/提示 qt的头文件，感觉很不习惯。 鼓捣了一阵后发现以下方法可以解决：
1.到项目的属性页里，配置属性-VC++目录-源目录，增加QT所在的路径
2.菜单栏里的qt5-convert project to qmake  generated project


and 知道其原因的大神请解释下]]></description><category></category></item><item><title><![CDATA[[QT学习] vs下的QT出现error link2001]]></title><link>https://blog.youkuaiyun.com/HelloElite/article/details/44650599</link><guid>https://blog.youkuaiyun.com/HelloElite/article/details/44650599</guid><author>HelloElite</author><pubDate>Thu, 26 Mar 2015 15:30:53 +0800</pubDate><description><![CDATA[“由于FindDialog类的定义包含Q_OBJECT宏，因而由qmake生成的makefile将会自动包含一些运行moc的规则……为了使moc能正常运行，必须把雷丁一从实现文件中分离出来并放到头文件中。由moc生成的代码会包含这个头文件，并会添加一些特殊的c++代码。……如果忘记使用了使用qmake重新生成makefile文件，并且也没有重新运行moc，那么连接程序就会报错，指出你声明了一些函数]]></description><category></category></item></channel></rss>