<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[DepaJun的专栏]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/Nickter</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; Nickter]]></copyright><item><title><![CDATA[C++中反正切atan2(y,x)与atan(x)]]></title><link>https://blog.youkuaiyun.com/Nickter/article/details/38665237</link><guid>https://blog.youkuaiyun.com/Nickter/article/details/38665237</guid><author>Nickter</author><pubDate>Mon, 18 Aug 2014 20:03:16 +0800</pubDate><description><![CDATA[试了一下
cout

atan2(1,0):1.5708  atan2(0,1):0  atan2(-1,0)-1.5708 atan2(0,-1):3.14159

原文地址：C++中反正切atan2(y,x)与atan(x)作者：鸳都学童

1、atan（x）表示求的是x的反正切，其返回值为[-pi/2,+pi/2]之间的一个数。
2、atan2（y，x）求的是y/x的反正切，]]></description><category></category></item><item><title><![CDATA[三维旋转矩阵的计算]]></title><link>https://blog.youkuaiyun.com/Nickter/article/details/22298969</link><guid>https://blog.youkuaiyun.com/Nickter/article/details/22298969</guid><author>Nickter</author><pubDate>Thu, 27 Mar 2014 16:28:28 +0800</pubDate><description><![CDATA[在三维空间中，旋转变换是最基本的变换类型之一，有多种描述方式，如Euler角、旋转矩阵、旋转轴/旋转角度、四元数等。本文将介绍各种描述方式以及它们之间的转换。
 
1. 旋转矩阵
用一个3阶正交矩阵来表示旋转变换，是一种最常用的表示方法。容易证明，3阶正交阵的自由度为3。注意，它的行列式必须等于1，当等于-1的时候相当于还做了一个镜像变换。
 
2. Euler角
根据Euler定理，]]></description><category></category></item><item><title><![CDATA[获取ServerSocket信息的方法及FTP原理]]></title><link>https://blog.youkuaiyun.com/Nickter/article/details/21949555</link><guid>https://blog.youkuaiyun.com/Nickter/article/details/21949555</guid><author>Nickter</author><pubDate>Mon, 24 Mar 2014 13:12:37 +0800</pubDate><description><![CDATA[与ServerSocket对象相关的信息有两个：绑定端口和绑定IP地址。绑定端口可以通过getLocalPort方法获得。绑定IP地址可以通过getInetAddress方法获得。
　　一、getLocalPort方法
　　getLocalPort方法的返回值可分为以下三种情况：
　　1.　　　　　　 ServerSocket对象未绑定端口，getLocalPort方法的返回值为-1。]]></description><category></category></item><item><title><![CDATA[Qt之QTcpServer/QTcpSocket简单收发信息（1）]]></title><link>https://blog.youkuaiyun.com/Nickter/article/details/21886933</link><guid>https://blog.youkuaiyun.com/Nickter/article/details/21886933</guid><author>Nickter</author><pubDate>Sun, 23 Mar 2014 21:02:40 +0800</pubDate><description><![CDATA[用QT包装好的东西做socket类东西，我只能说啥这么简单呢。
waitForConnected() 等待链接的建立
waitForReadyRead() 等待新数据的到来
waitForBytesWritten() 等待数据写入socket
waitForDisconnected() 等待链接断开
开始前在项目.pro里面添加如下：
       QT 
+= core guine]]></description><category></category></item><item><title><![CDATA[QT TCP socket通信(二)]]></title><link>https://blog.youkuaiyun.com/Nickter/article/details/21873481</link><guid>https://blog.youkuaiyun.com/Nickter/article/details/21873481</guid><author>Nickter</author><pubDate>Sun, 23 Mar 2014 15:45:43 +0800</pubDate><description><![CDATA[在上一节里我们使用TCP服务器发送一个字符串，然后在TCP客户端进行接收。在这一节我们重新写一个客户端程序和一个服务器程序，这次我们让客户端进行文件的发送，服务器进行文件的接收。有了上一节的基础，这一节的内容就很好理解了，注意一下几个信号和槽的关联即可。当然，我们这次要更深入了解一下数据的发送和接收的处理方法。




一、客户端


这次我们先讲解客户端，在客户端里我们与服务器进]]></description><category></category></item><item><title><![CDATA[QT TCP socket通信（一）]]></title><link>https://blog.youkuaiyun.com/Nickter/article/details/21872847</link><guid>https://blog.youkuaiyun.com/Nickter/article/details/21872847</guid><author>Nickter</author><pubDate>Sun, 23 Mar 2014 15:29:43 +0800</pubDate><description><![CDATA[TCP即Transmission Control Protocol，传输控制协议。与UDP不同，它是面向连接和数据流的可靠传输协议。也就是说，它能使一台计算机上的数据无差错的发往网络上的其他计算机，所以当要传输大量数据时，我们选用TCP协议。

TCP协议的程序使用的是客户端/服务器模式，在Qt中提供了QTcpSocket类来编写客户端程序，使用QTcpServer类编写服务器端程序。我们在服]]></description><category></category></item><item><title><![CDATA[#define的几点特殊用法]]></title><link>https://blog.youkuaiyun.com/Nickter/article/details/21740925</link><guid>https://blog.youkuaiyun.com/Nickter/article/details/21740925</guid><author>Nickter</author><pubDate>Fri, 21 Mar 2014 19:59:10 +0800</pubDate><description><![CDATA[#define Conn(x,y) x##y
#define ToChar(x) #@x
#define ToString(x) #x
x##y表示什么？表示x连接y，举例说：
int n = Conn(123,456);   结果就是n=123456;
char* str = Conn("asdf", "adf")结果就是 str = "asdfadf";

再来看#@x，其实就是]]></description><category></category></item><item><title><![CDATA[什么是java序列化，如何实现java序列化？]]></title><link>https://blog.youkuaiyun.com/Nickter/article/details/21330433</link><guid>https://blog.youkuaiyun.com/Nickter/article/details/21330433</guid><author>Nickter</author><pubDate>Sun, 16 Mar 2014 17:00:03 +0800</pubDate><description><![CDATA[Java 串行化技术可以使你将一个对象的状态写入一个Byte
流里，并且可以从其它地方把该Byte 流里的数据读出来，重新构造一个相同的对象。这种机制允许你将对象通过网络进行传播，并可以随时把对象持久化到数据库、文件等系统里。Java的串行化机制是RMI、EJB等技术的技术基础。用途：利用对象的串行化实现保存应用程序的当前工作状态，下次再启动的时候将自动地恢复到上次执行的状态。
序列化就是一种]]></description><category></category></item><item><title><![CDATA[java中的各种数据类型在内存中存储的方式]]></title><link>https://blog.youkuaiyun.com/Nickter/article/details/21297737</link><guid>https://blog.youkuaiyun.com/Nickter/article/details/21297737</guid><author>Nickter</author><pubDate>Sat, 15 Mar 2014 21:29:27 +0800</pubDate><description><![CDATA[http://blog.youkuaiyun.com/aaa1117a8w5s6d/article/details/8251456


1.java是如何管理内存的

java的内存管理就是对象的分配和释放问题。（其中包括两部分）

分配：内存的分配是由程序完成的，程序员需要通过关键字new为每个对象申请内存空间(基本类型除外)，所有的对象都在堆(Heap)中分配空间。
释放：对象的释放是由垃]]></description><category></category></item><item><title><![CDATA[Qt添加库文件和头文件目录（QCreator）]]></title><link>https://blog.youkuaiyun.com/Nickter/article/details/21155407</link><guid>https://blog.youkuaiyun.com/Nickter/article/details/21155407</guid><author>Nickter</author><pubDate>Thu, 13 Mar 2014 09:31:37 +0800</pubDate><description><![CDATA[在使用QtCreator开发图像处理程序的时候想加入Opencv库来处理图形，添加头文件，需要编辑工程文件夹下的.pro文件在文件中添加以下内容，即可包含头文件的文件夹：
INCLUDEPATH += D:\OpenCV2.0\vc2008\include\opencv
（D:\OpenCV2.0\vc2008\include\opencv就是我的opencv头文件所在的文件夹，如果还增加其他]]></description><category></category></item><item><title><![CDATA[Qt正则表达式]]></title><link>https://blog.youkuaiyun.com/Nickter/article/details/20780323</link><guid>https://blog.youkuaiyun.com/Nickter/article/details/20780323</guid><author>Nickter</author><pubDate>Sat, 08 Mar 2014 15:09:59 +0800</pubDate><description><![CDATA[http://www.oschina.net/question/234345_48746?sort=time


引言
    正则表达式（regular expression）就是用一个“字符串”来描述一个特征，然后去验证另一个“字符串”是否符合这个特征。比如 表达式“ab+” 描述的特征是“一个 'a' 和 任意个 'b' ”，那么 'ab', 'abb', 'abbbbbbbbbb']]></description><category></category></item><item><title><![CDATA[Qt 设置窗口居中显示]]></title><link>https://blog.youkuaiyun.com/Nickter/article/details/20775607</link><guid>https://blog.youkuaiyun.com/Nickter/article/details/20775607</guid><author>Nickter</author><pubDate>Sat, 08 Mar 2014 13:38:37 +0800</pubDate><description><![CDATA[Qt 设置窗口居中显示(2010-11-30 10:23:31)


方法一：在窗口(QWidget类及派生类)的构造函数中添加如下代码：

#include 

//.......
QDesktopWidget* desktop = QApplication::desktop(); // =qApp->desktop();也可以
move((desktop->width() -]]></description><category></category></item><item><title><![CDATA[QT信号和槽以结构体为参数传递复杂数据]]></title><link>https://blog.youkuaiyun.com/Nickter/article/details/20775069</link><guid>https://blog.youkuaiyun.com/Nickter/article/details/20775069</guid><author>Nickter</author><pubDate>Sat, 08 Mar 2014 13:27:00 +0800</pubDate><description><![CDATA[http://blog.youkuaiyun.com/zenwanxin/article/details/7938105
 QT 的信号和槽机制能十分方便的用来传输数据，但是如果数据种类比较多，分类比较多的时候，就需要更好地更高效的来传递数据的方法。以结构体作为参数是个很不错的选择。这几天写的程序正好需要以结构体来作为参数，但是网上搜的资料很少，讲的也不详细，我解决了问题后整理了一下，希望给有同样需求的同学]]></description><category></category></item><item><title><![CDATA[QT模态对话框及非模态对话框学习]]></title><link>https://blog.youkuaiyun.com/Nickter/article/details/20774995</link><guid>https://blog.youkuaiyun.com/Nickter/article/details/20774995</guid><author>Nickter</author><pubDate>Sat, 08 Mar 2014 13:21:41 +0800</pubDate><description><![CDATA[QT模态对话框及非模态对话框

模态对话框（Modal Dialog）与非模态对话框（Modeless
 Dialog）的概念不是Qt所独有的，在各种不同的平台下都存在。又有叫法是称为模式对话框，无模式对话框等。所谓模态对话框就是在其没有被关闭之前，用户不能与同一个应用程序的其他窗口进行交互，直到该对话框关闭。对于非模态对话框，当被打开时，用户既可选择和该对话框进行交互，也可以选择同应用程序]]></description><category></category></item><item><title><![CDATA[Qt事件处理机制]]></title><link>https://blog.youkuaiyun.com/Nickter/article/details/20552395</link><guid>https://blog.youkuaiyun.com/Nickter/article/details/20552395</guid><author>Nickter</author><pubDate>Wed, 05 Mar 2014 16:05:39 +0800</pubDate><description><![CDATA[本篇来介绍Qt 事件处理机制 。深入了解事件处理系统对于每个学习Qt人来说非常重要，可以说，Qt是以事件驱动的UI工具集。 大家熟知Signals/Slots在多线程的实现也依赖于Qt的事件处理机制。
在Qt中，事件被封装成一个个对象，所有的事件均继承自抽象类QEvent. 接下来依次谈谈Qt中有谁来产生、分发、接受和处理事件：
1、谁来产生事件： 最容易想到的是我们的输入设备，比如键盘、鼠标]]></description><category></category></item><item><title><![CDATA[QT常识]]></title><link>https://blog.youkuaiyun.com/Nickter/article/details/20524719</link><guid>https://blog.youkuaiyun.com/Nickter/article/details/20524719</guid><author>Nickter</author><pubDate>Wed, 05 Mar 2014 08:55:52 +0800</pubDate><description><![CDATA[1 QWidget类有什么用途?
  在Qt应用程序中,QWidget用做工作空间.它是底层窗口,在其上可以放置其他对象,如按钮等.
2 a.setMainWidget(&mainwindow);语句的意义是什么?
  这段代码告诉Qt,说明mainwindow对象是程序的主部件.当主部件关闭时,整个程序随之结束.
  (主部件与其他Qt部件的区别是：当主部件终止时,整个程序就运行结束.)]]></description><category></category></item><item><title><![CDATA[sqlite基本sql语句使用]]></title><link>https://blog.youkuaiyun.com/Nickter/article/details/20456185</link><guid>https://blog.youkuaiyun.com/Nickter/article/details/20456185</guid><author>Nickter</author><pubDate>Tue, 04 Mar 2014 13:22:30 +0800</pubDate><description><![CDATA[一，SQLite常见的数据类型
SQLite是无类型的。 这意味着你可以保存任何类型的数据到你所想要保存的任何表的任何列中，无论这列声明的数据类型是什么(只有自动递增Integer Primary Key才有用)。对于SQLite来说对字段不指定类型是完全有效的。 即使SQLite允许忽略数据类型，但是仍然建议在你的Create Table语句中指定数据类型。 因为数据类型对于你和其他的程序员交]]></description><category></category></item><item><title><![CDATA[qt与SQLite数据库]]></title><link>https://blog.youkuaiyun.com/Nickter/article/details/20363121</link><guid>https://blog.youkuaiyun.com/Nickter/article/details/20363121</guid><author>Nickter</author><pubDate>Mon, 03 Mar 2014 11:14:45 +0800</pubDate><description><![CDATA[说起来，真心没有自己用qt去连接过数据库，今天就梳理一下qt操作数据库的方法和相关的设定条件。
Qt版本2.5.0，数据库：SQLite Expert Professional 3。
废话不多说，让我们马上开始：
1、直接建立一个最简单mainwindow窗口程序，然后要再工程文件（.pro）文件中加入 QT +=sql，之后你才可以引用操作db相应的库。2、首先要查看一下你的qt是否支持S]]></description><category></category></item><item><title><![CDATA[Qt Model/view(二)]]></title><link>https://blog.youkuaiyun.com/Nickter/article/details/20355999</link><guid>https://blog.youkuaiyun.com/Nickter/article/details/20355999</guid><author>Nickter</author><pubDate>Mon, 03 Mar 2014 08:47:25 +0800</pubDate><description><![CDATA[最近在看Qt的Model/View Framework，在网上搜了搜，好像中文的除了几篇翻译没有什么有价值的文章。E文的除了Qt的官方介绍，其它文章也很少。看到一个老外在blog中写道Model/View是他认为Qt中最不好的一部分了。真的是这样吗？为了回馈开源社区，我写了这篇blog，写的是我认为比较有价值的东东。题目起得是解析，但也没有特别细节的介绍，点到为止，有兴趣的Tx可以继续讨论。我所看]]></description><category></category></item><item><title><![CDATA[Qt Model/view(一)]]></title><link>https://blog.youkuaiyun.com/Nickter/article/details/20355927</link><guid>https://blog.youkuaiyun.com/Nickter/article/details/20355927</guid><author>Nickter</author><pubDate>Mon, 03 Mar 2014 08:45:46 +0800</pubDate><description><![CDATA[http://doc.trolltech.com/main-snapshot/model-view-programming.html
介绍
Qt 4推出了一组新的item view类，它们使用model/view结构来管理数据与表示层的关系。这种结构带来的功能上的分离给了开发人员更大的弹性来定制数据项的表示，它也提供一个标准的model接口，使得更多的数据源可以被这些item view使用。这]]></description><category></category></item></channel></rss>