计算机软件学习
gsnet
这个作者很懒,什么都没留下…
展开
-
Qt中对象销毁的几种用法
1. 生成对象时指定了parent, 且此对象是QObject,则parent会接管此对象的销毁工作。即只用new不用delete, 当parent在销毁时会自动将这个子对象进行合适的销毁。由于自动销毁,至于如果使用deleteLater();这种重复删除,会不会和Qt自动销毁的机制有冲突?这个就没研究明白了。2. 生成对象时使用了QPointer, 在删除时应使用XX.d原创 2013-05-27 01:29:21 · 9102 阅读 · 1 评论 -
[转]程序员生活规范
转自www.21ic.com http://www.21ic.com/news/html/97/show28268.htm 总感觉自己做事有点乱.这个学一点,那个学一点的.学习工作没什么规范,希望用此文章来改善自己的坏毛病.不知道要做什么时,可以参考此文章,让自己有个方向. 1、总结自己一天任务的完成情况 最好的方式是写工作日志,把自己今天完成了什么事情,遇见了什么问题都记录下来,日后翻原创 2013-02-26 15:57:02 · 322 阅读 · 0 评论 -
字符串压缩,先zlib再base64转码示例(以Delphi为例)
1. 简介:这是常用的网络通信的手段,原因是: zlib 压缩可以将字符串体积明显缩小(只有较长才能体现出来),而base64可以将刚刚压缩的二进制码变成可见字符,便于在语言中进行传递及网络通信。2. 关于zlib压缩算法的使用:在linux 用C语言开发一般用zlib 库在Delphi5上 可以用zlibEx version 1.2.3 july 19, 2007 ? 156 kb (因为更新的原创 2013-02-26 16:00:51 · 3613 阅读 · 0 评论 -
SVN多用户同时修改一个文件冲突过程分析及解决方法(非用锁方法)
在2个用户同时修改一个文件, Linda update下来, Stephen update下来。 Linda 修改,commit stephen改了之后commit,于是有版本冲突, SVN提示:有冲突,你先update吧。于是stephen就update下来,这时有两种情况: 1)双方修改的内容不互相冲突,例如一个是文件头,另一个是文件尾。这时候SVN会自动合并文件。图标是?号原创 2013-02-26 15:58:53 · 4849 阅读 · 0 评论 -
java里面泛型的学习心得
我自我总结了一下,大家看对不对: 1. 泛型 2. 在使用的时候,非常像一个隐式的强制转换 相当于Integer i2 = (Integer)al2.get(0); 因为预先定义了泛型 ,所以不用担心al2.get(0); 返回的是别的什么东西,肯定是Integer. ------------------------------- Integer "is a原创 2013-02-26 15:58:41 · 375 阅读 · 0 评论 -
BCB6 学习杂记1
学习BCB,目标是熟练,能编写小程序。 并在这次学习中加深对计算机编程语言及IDE的理解, 和嵌入式编程环境做充分的比较和理解。 力求互相借鉴,互相学习。学习期满之后要给自己出项目题目,强制完成。 1) BCB的工程文件bpr居然是XML格式的, 这我是第一次知道,呵呵, 平时都不打开看的。这样的格式更有利于跨平台。 2) 窗体文件 frm 也是纯文本的,里面充满了类原创 2013-02-26 15:57:57 · 435 阅读 · 0 评论 -
[原创][技术]XML学习笔记(1)------XML 基础
XML 简介 XML 用途 XML 树结构 XML 语法 XML 元素 XML 属性 XML 验证 XML 验证器 XML 浏览器 XML 查看 XML CSS XML XSLT -----------------------------------------------------------------------------------------------------------原创 2013-02-26 15:57:40 · 1534 阅读 · 0 评论 -
[原创][技术]PHP学习笔记(6)--PHP与mySQL
MySQL Connect MySQL Create MySQL Insert MySQL Select MySQL Where MySQL Order By MySQL Update MySQL Delete PHP ODBC -----------------------------------------------------------------------------------原创 2013-02-26 15:57:38 · 1897 阅读 · 0 评论 -
[原创][技术]PHP学习笔记(3)--基础3/3
今天这一课内容少:PHP 表单 PHP $_GET PHP $_POST 正文:--------------------------------------------------------------------------PHP表单 先写了一个index.html 内容如下:welcome.php" method="post">Name: Age: 又写了一原创 2013-02-26 15:57:32 · 236 阅读 · 0 评论 -
[原创][技术]PHP学习笔记(2)--基础2/3
主要介绍:PHP If...Else PHP Switch PHP 数组 PHP 循环 PHP 函数 正文:-----------------------------------------------------------------------------------------------PHP If...Else 和C语言差不多,也是有if...else及 else原创 2013-02-26 15:57:30 · 370 阅读 · 0 评论 -
[原创][技术]mySQL笔记(1)
学习mySQL, 环境:WINDOWS下装的EasyPHP. 这是个好东西,装一个软件,不用做设置,就自动装好了Apache + mySQL + PHP + phpMyAdmin 了。实际上主要使用phpMyAdmin来学习mySQL. 界面很简洁 操作很简单,图形化的基于Web 的界面。 每次操作,都会自动转化成相应的SQL语句。 当然更可能直接输入SQL语句,适合专家级的朋原创 2013-02-26 15:57:23 · 207 阅读 · 0 评论 -
初次了解VS.net c#的一点体会------程序员的工作似乎更轻松了
初次了解VS.net c#的一点体会------程序员的工作似乎更轻松了 2009-03-25 11:53:21 初次了解VS.net c#的一点体会------程序员的工作似乎更轻松了 看了http://www.ibook8.com/book/c.htm 上的一个教程,是讲C#创建网站的,很有兴趣了解一下,于是学了一会。 忽然发现写网站可以如此简单,不再需要用ULT原创 2013-02-26 15:57:15 · 353 阅读 · 0 评论 -
[原创][技术]PHP学习笔记(1)--基础1/3
主要内容: PHP 教程 PHP 简介 PHP 安装 PHP 语法 PHP 变量 PHP 字符串 PHP 运算符 关于 PHP的基本知识,这里不再重复了。我的理解是:1. PHP 是脚本语言2. PHP是内嵌在HTML中的, 文件扩展名一般是php3. PHP在服务器端运行,返回可定制的HTML给客户端。 所以在客户端是不能看到源码的---------原创 2013-02-26 15:57:27 · 287 阅读 · 0 评论 -
【转载】Qt的内存管理(转)
在QT的程序中经常会看到只有new而不delete的情况,其实是因为QT有一套回收内存的机制,主要的规则如下:1.所有继承自QOBJECT类的类,如果在new的时候指定了父亲,那么它的清理时在父亲被delete的时候delete的,所以如果一个程序中,所有的QOBJECT类都指定了父亲,那么他们是会一级级的在最上面的父亲清理时被清理,而不用自己清理;2.程序通常最上层会有一个根的Q转载 2013-05-27 01:28:30 · 910 阅读 · 0 评论 -
即时通信软件常用开放协议与术语
1. XMPP(Extensible Messaging and Presence Protocol)是一种实时通讯的协议(前身为 Jabber 且被 Google Talk 所采用),XMPP的白皮书在这里 http://xmpp.org/rfcs/rfc6120.html#toc官方提供了XMPP的各种语言调用库。XMPP的一种常用服务器是:Openfire(开源的)2. OAuth 2.原创 2013-02-26 16:01:25 · 525 阅读 · 0 评论 -
智能指针auto_ptr简单使用例子
讲智能指针的文件已经很多了,大体意思都是为了避免C++中对象被new却未delete而引起的内存泄露问题。使用VC2005进行个简单的例子:建立一个console application, 建个CStudent类:#include class CStudent{public: CStudent(); ~CStudent(); CString getName(); int g原创 2013-02-26 16:01:19 · 474 阅读 · 0 评论 -
[转载]各浏览器HTTP Get请求URL的最大长度
各浏览器HTTP Get请求URL最大长度并不相同,几类常用浏览器最大长度及超过最大长度后提交情况如下:IE6.0 :url最大长度2083个字符,超过最大长度后无法提交。IE7.0 :url最大长度2083个字符,超过最大长度后仍然能提交,但是只能传过去2083个字符。firefox 3.0.3 :url最大长度7764个原创 2013-02-26 16:01:16 · 412 阅读 · 0 评论 -
设计模式 之 单例模式简单例子(Java)
package com.stephen.javatest02;public class MachineConfig { private static MachineConfig a = null; private String ServerIP=""; private int ServerPort=0; private MachineConfig() { }原创 2013-02-26 16:00:55 · 417 阅读 · 0 评论 -
【转】浅析C++中内存分配的方式
在C++中,内存分成5个区,他们分别是堆、栈、自由存储区、全局/ 静态存储区和常量存储区。栈,就是那些由编译器在需要的时候分配,在不需要的时候自动清楚的变量的存储区。里面的变量通常是局部变量、函数参数等。堆,就是那些由new分配的内存块,他们的释放编译器不去管,由我们的应用程序去控制,一般一个new就要对应一个 delete。如果程序员没有释放掉,那么在程序结束后,操作系统会自动回收。自由存储区,原创 2013-02-26 15:58:33 · 225 阅读 · 0 评论 -
C++ builder里写一个渐变条
1. 原理先在photoshop中, 画一个渐变条, 例如300*20 pixels, 存成bmp图1: 渐变条的效果 在C++ BUILDER6中, 我们放1个TPanel做我们进度条的容器, 放2个Image控件,都load进刚才那个渐变的图片原理是: 将Image1 设为TPanel一样的大小一样的位置, 将image2平行排在TPanel左边恰好相接, 然后设一个tim原创 2013-02-26 15:58:14 · 892 阅读 · 0 评论 -
在Borland C++ Builder6中写DLL初步入门
在BORLAND C++ BUILDER6 写DLL初步实验. 虽然简单, 但是基本弄清了点眉目:主要步骤: 1 写一个DLL 2 写一个APP来调用DLL 1. 写一个DLLFILE->NEW-> DLL WIZARD 选C++ 及VCL 这时根据向导生成了一个DLL框架, 看上去很像一个普通的app, 下面完善并修改代码, 定义自己的一个DLL函数 myindlltest原创 2013-02-26 15:58:12 · 1820 阅读 · 0 评论 -
C++ BUILDER6里的ini文件读写
ini就是我们平常在windows里使用的那种文本文件,用来存储一些配置参数的,在C++ builder6里读写ini那是相当的简单,只需要TIniFile类即可,使用TIniFile需要先包含头文件#include 这里先明确2个概念,section和key, 看实际例子[IME]Chinese_method=五笔字型version=1.03其中,括号中间的IME就是一个sectio原创 2013-02-26 15:58:06 · 2348 阅读 · 0 评论 -
[原创][技术]PHP学习笔记(5)--PHP高级2/2
主要内容: PHP E-mail PHP 安全 E-mail PHP Error PHP Exception PHP Filter 正文: -------------------------------------------------------------------PHP E-mail $to = "someone@example.com";$subject = "Tes原创 2013-02-26 15:57:36 · 1019 阅读 · 0 评论 -
[原创]BCB里如何进行16进制和10进制的互相转化实例
以BCB6 (Borland C++ Builder 6.0)为例:这个小函数很有用哦://------HexToInt: 16进制到10进制转换int HexToInt(AnsiString Hex){ return StrToInt("$"+Hex); }再来看10进制到16进制的转换:IntToHex(int Value, int Digits);原创 2013-02-26 15:56:51 · 4618 阅读 · 0 评论 -
[转]用Easyphp搭建服务器后让局域网中其他电脑访问网站的方法
用Easyphp搭建服务器后让局域网中其他电脑访问网站的方法 2012-07-20 21:49 166人阅读 评论(0) 收藏 举报 方法很简单。 第一步:将easyphp中的httpd.conf文件里的Listen 127.0.0.1:80,修改为Listen 80。原创 2013-02-26 16:01:10 · 796 阅读 · 0 评论 -
《代码大全》读书笔记之 类的继承
派生后覆盖了某个子程序,但在其中没做任何操作,这种情况也值得怀疑 这通常表明基类的设计中有错误。举例来说,假设你有一个Cat(猫)类,它有一个Scratch()(抓)成员函数,可是最终你发现有些猫的爪尖儿没了,不能抓了。你可能想从Cat类派生一个叫ScratchlessCat(不能抓的猫)的类,然后覆盖Scratch()方法让它什么都不做。但这种做法有这么几个问题: ■ 它修原创 2013-02-26 16:00:59 · 418 阅读 · 0 评论 -
可重入和线程安全的概念
可重入 一个类被称为是可重入的:只要在同一时刻至多只有一个线程访问同一个实例,那么我们说多个线程可以安全地使用各自线程内自己的实例。 一个函数被称为是可重入的:如果每一次函数的调用只访问其独有的数据(译者注:全局变量就不是独有的,而是共享的),那么我们说多个线程可以安全地调用这 个函数。 也就是说,类和函数的使用者必须通过一些外部的加锁机制来实现访问对象实例或共享数据的序列化。 线程安全 如果原创 2013-02-26 16:01:14 · 458 阅读 · 0 评论 -
JAVA设计模式1 ---- 简单工厂模式 (以汽车工厂为例)
简单工厂模式的要素:1 抽象产品: 有1个产品接口(抽象类)2 具体产品: 有N件产品类来实现这个产品接口(或抽象类)3 工厂角色: 有1个工厂 (Factory) 来生产产品(通过参数传递产品名称)先来看Car这个接口:public interface Car { public void run(); public void stop();}很简单吧,注意接口是不能写实现的,否则不通原创 2013-02-26 16:01:01 · 2377 阅读 · 1 评论 -
设计模式之 使用静态工厂模式代替构造函数(Java)
设有一个package com.stephen.javatest02;public class Complex { private double re; private double im; private Complex(double re, double im) //注意这里用private, 不让使用者直接来new生成 { this.re = r原创 2013-02-26 16:00:53 · 705 阅读 · 0 评论 -
JAVA传给方法的参数详解
Java参数按值传递转贴自百度文库:http://wenku.baidu.com/view/77f67efbfab069dc5022019c.html面试题:当一个对象被当作参数传递到一个方法后,此方法可改变这个对象的属性,并可返回变化后的结果,那么这里到底是值传递还是引用传递? 答:是值传递。Java 编程语言只有值传递参数。当一个对象实例作为一个参数被传递到方法中时,参数的值就是该对象原创 2013-02-26 16:00:25 · 495 阅读 · 0 评论 -
[转]C++著名程序库的比较和学习经验
转自 http://blog.csdn.net/oanqoanq/article/details/7169291 C++著名程序库的比较和学习经验 1、C++各大有名库的介绍——C++标准库 2、C++各大有名库的介绍——准标准库Boost 3、C++各大有名库的介绍——GUI 4、C++各大有名库的介绍——网络通信 5、C++各大有名库的介绍——XML 6、C++各大有名库的介绍——原创 2013-02-26 16:00:17 · 400 阅读 · 0 评论 -
[转贴]C/C++语言void及void指针深层探索
C/C++语言void及void指针深层探索 1.概述 许多初学者对C/C++语言中的void及void指针类型不甚理解,因此在使用上出现了一些错误。本文将对void关键字的深刻含义进行解说,并详述void及void指针类型的使用方法与技巧。 2.void的含义 void的字面意思是“无类型”,void *则为“无类型指针”,void *可以指向任何类型的数据。 vo原创 2013-02-26 15:58:47 · 306 阅读 · 0 评论 -
单例模式---面向对象设计的一个常用模式,以及由此所想到的
单例模式的要点 显然单例模式的要点有三个:一是某个类只能有一个实例;二是它必须自行创建这个实例;三是它必须自行向整个系统提供这个实例。 使用单例模式的例子有:1. 一个数据库链接, 包括主机名、用户名、密码、数据库名等。 它可能与多个窗口或DLL或其它存在对应关系。 我们不需要为每个窗口创建一个数据库链接,因为这样既笨,又不便于维护,容易出错。也许我们创建了这样一个类:clas原创 2013-02-26 15:58:45 · 218 阅读 · 0 评论 -
PHP 中文乱码的问题解决方案,可解决80%的情况。
总之一句话,要解决PHP中文乱码最好最快的解决办法就是,页面申明的编码与数据库内部编码一致,如果页面申请的页码与数据库内部编码不一致时,就设定连 接编码 ,mysql_query("SET NAMES XXX "); XXX为连接编码.一定可以解决乱码的问题.1. 亲自实验,只需要 mysql_query("set names 'GB2312'"); 或 mysql_query("set na原创 2013-02-26 15:58:43 · 262 阅读 · 0 评论 -
关于在嵌入式设备和服务器之间通信数据--不能用SQL,以后不用再讨论了
关于在嵌入式设备和服务器之间通信数据--不能用SQL,以后不用再讨论了。 原因是今天在QQ群上的做技术的在讨论, 在嵌入式设备上是否适合直接发SQL语句到服务器,然后返回东西。最终讨论的结果是:1. 首先,现在没人这样用。习惯上,都是自定义一些通信指令集, 用来握手、传数据、结束等。不会使用SQL这样“高级”和复杂的东西。2 更重要的,为了保持接口通信协议的相对稳定,还是自定义。因为毕竟S原创 2013-02-26 15:58:37 · 637 阅读 · 0 评论 -
在ubuntu上安装QT Creator并配置编译环境
前天刚下载了ubuntu, 安装 安装好Qt Creator后, 再1) 安装g++包 搜索g++2) sudo apt-get install qt4-dev-tools qt4-doc qt4-qtconfig qt4-demos qt4-designer ,就成功了否则无法编译原创 2013-02-26 15:58:01 · 419 阅读 · 0 评论 -
linux下也有很多好游戏
linux下也有很多好游戏了,通过安装这些游戏,可以进一步熟悉LINUX呢。 甚至有些是开源的,可以自己编译修改耶 ^-^ 以下转帖自LINUX桌面中文网 http://linuxdesktop.cn/2008/02/12/top-28-games-on-linux-2008/ 2008年Linux的25个顶级游戏 2008-02-12 9:56 | 分类 游戏娱乐 | By t原创 2013-02-26 15:56:43 · 1593 阅读 · 0 评论 -
[原创][技术]PHP学习笔记(4)--PHP高级1/2
PHP 日期 PHP 引用 PHP 文件 PHP 文件上传 PHP Cookies PHP Sessions ---------------------------------------------------------------------------- PHP 日期 例子: echo date("Y/m/d/D");echo "";echo date("Y.m.d,D");ech原创 2013-02-26 15:57:34 · 538 阅读 · 0 评论 -
[转帖]详解公钥、私钥、数字证书的概念
转帖来源于 http://apps.hi.baidu.com/share/detail/1560096加密和认证 首先我们需要区分加密和认证这两个基本概念。 加密是将数据资料加密,使得非法用户即使取得加密过的资料,也无法获取正确的资料内容,所以数据加密可以保护数据,防止监听攻击。其重点在于数据的安 全性。身份认证是用来判断某个身份的真实性,确认身份后,系统才可以依不同的身份给予不同的权原创 2013-02-26 16:00:48 · 359 阅读 · 0 评论 -
C语言中指向函数的指针(我见过的讲的最清晰的文章)
转帖自: http://wenku.baidu.com/view/7e566448cf84b9d528ea7a57.html 1 定义和调用程序在编译后,每个函数都有一个首地址(也就是函数第一条指令的地址),这个地址称为函数的指针。可以定义指向函数的指针变量,使用指针变量间接调用函数。下面通过一个简单的例子来说明:float max(float x,float y){return x>y?原创 2013-02-26 16:00:21 · 8522 阅读 · 2 评论