摘要: 一、相关缩写OGC——Open Geospatial Consortium(开放地理空间联盟),负责制订GIS领域的标准二、PostGIS的扩展PostGIS是利用Postgresql的扩展机制,在Postgresql的基础上增加了表达地理信息的空间数据类型和操作这些类型的函数。三、PostGIS支持的数据类型1、OpenGIS Consortium (OGC)定义了两种标准方式来表达空间对象,分别是WKT(Well-Known Text)和WKB(Well-Known Binary)。WKT其实等价于编程语言中的类型的字面量,而WKB是空间对象在数据库中的存储格式。常用数据类型如下:• PO 阅读全文
posted @ 2011-05-09 23:02 fre2technic 阅读(2955) 评论(0) 推荐(0) 编辑
摘要: OpenMPTBB:Threading Building BlocksFastFlow 阅读全文
posted @ 2011-04-27 20:43 fre2technic 阅读(264) 评论(0) 推荐(0) 编辑
摘要: scp:secure copysftp:SSH File Transfer Protocolftps:FTP over SSLscp和sftp在linux下,可以直接使用。在windows下,一般使用pscp和psftp,是putty的相关工具,在putty的官网可以下载。scp一次会话只能传一个文件,sftp在会话中可以交互。 阅读全文
posted @ 2011-04-27 17:27 fre2technic 阅读(350) 评论(0) 推荐(0) 编辑
摘要: linux上用C/C++写程序时,很容易碰到段错误的提示,此时程序被自动终止。这个问题是由于非法访问内存引起的,一般的原因都是因为程序中的指针解引用出现了错误。出现段错误是,linux一般会生成一个core dump文件,如果没有生成,可能是因为分配给core dump文件的控件为0,可以用ulimit -c命令查看,如果为0,core dump文件不会生成,可以通过执行ulimit -c [数字],来指定core dump文件可以使用的空间,我一般执行ulimit -c unlimited,把空间设置为无限。core dump文件默认生成在执行程序的目录中,生成后,执行gdb [可执行文件名 阅读全文
posted @ 2011-04-25 01:43 fre2technic 阅读(317) 评论(0) 推荐(0) 编辑
摘要: 说到日志工具,下意识就想到log4系列,这个日志库始于log4j,后来被移植成各种流行语言的库,各种log4xxxx满天飞。最近在Linux下写C++程序,需要一个日志工具,很自然想到了要找log4的c++移植。放狗搜了一下,居然有三个,Log4cpp,Log4cxx,Log4cplus。到各自的官网逛了一下,发现前两个很久都没有更新了,看来只能选择Log4cplus了。 阅读全文
posted @ 2011-04-19 09:58 fre2technic 阅读(584) 评论(0) 推荐(0) 编辑
摘要: ComboBox是一个很有用的控件,该控件基本在任何一套UI控件包中都属于必须提供的必备基础控件,同时它的实现也很值得学习.所谓的“与ComboBox有相似行为”,我主要是指以下几点,为了描述方便,我把此类控件分为两部分,没有下拉时,显示的区域称为主控件,下拉时,下拉区域称为弹出控件.1、弹出控件可以紧跟主控件的周围.2、弹出控件必须在最大范围内不被父容器裁剪.比如,如果是Win32或者WinForm的ComboBox,它们的弹出控件是可以超出所在程序的窗口范围的(可以把控件放到窗体的底部试试),仅受制于最顶级的窗口——桌面. Silverlight中的ComboBox也可以超出任何父容器,仅 阅读全文
posted @ 2011-04-16 17:21 fre2technic 阅读(934) 评论(0) 推荐(0) 编辑
摘要: 我们定义如下类: //A.hclassA{private:staticconstintm=5;staticintn;staticvectorbuf;};其中包含三个私有的静态类成员,C++规定const静态类成员可以直接初始化,其他非const的静态类成员需要在类声明以外初始化,我们一般选择在类的实现文件中初始化,初始化的方式是书写一遍类型的定义://A.cppintA::n; //不指定任何初始值,系统自动初始化为0vectorA::buf; //调用vector的默认构造函数来初始化 //注意:调用默认构造函数时,不要使用括号,否则编译器将把A... 阅读全文
posted @ 2011-03-25 09:30 fre2technic 阅读(37333) 评论(2) 推荐(6) 编辑
摘要: 这两个头文件都在linux的/usr/include目录下面,后者比前者多了一个s,一般使用以string.h(没有s)的为主,那strings.h(有s)什么时候使用呢?打开这个头文件,可以看见区别如下:/* We don't need and should not read this file if <string.h> was already read. The one exception being that if __USE_BSD isn't defined, then these aren't defined in string.h, so w 阅读全文
posted @ 2011-03-15 18:30 fre2technic 阅读(2345) 评论(0) 推荐(0) 编辑
摘要: pthread_create()是linux上,创建新线程的调用,按照info给出的例子使用,编译时,会出现这个错误提示。这实际是一个链接错误。原因是,该函数实现在libpthread.so或者libpthread_nonshare.a中(在64 bitOS上,这两个库在/usr/lib64目录中),但是这两个库都不是linux的默认库,编译时,需要加上-lpthread参数。例如: g++ xxx.c -o xxx -lpthread如果使用了类似eclipse之类的IDE工具,可以在项目属性中设置。 阅读全文
posted @ 2011-03-04 15:47 fre2technic 阅读(346) 评论(0) 推荐(0) 编辑
摘要: man就是manual的缩写,用来查看Linux系统中自带的各种参考手册,手册页分为几个部分,如下:1 Executable programs or shell commands2 System calls (functions provided by the kernel)3 Library calls (functions within program libraries)4 Special files (usually found in /dev)5 File formats and conventions eg /etc/passwd6 Games7 Miscellaneous (in 阅读全文
posted @ 2011-03-01 17:02 fre2technic 阅读(276) 评论(0) 推荐(0) 编辑