- 博客(85)
- 收藏
- 关注
转载 MTK task 小结 1
MTK 的 基本执行单元是task,从操作系统的角度来理解,task 有些像线程而不是进程,进程之间的地址空间是相互隔离的,说白点就是进程之间的全局变量是不相互干扰的,而线程之间则是用同一个地址空间,MTK 的task 之间的地址空间也是共同的,也就是在MTK 编程里,定义了一个全局变量,那么在任何一个task里面都能引用,(这里举个例子,在实际编程过程中最好不要用全局变量,实在没有办法避开,那么全局变量也要分模块化,进行封装, 扯远了)。 所以说,MTK 的task 更像线程,MTK 用的
2010-09-25 16:24:00
713
转载 C++虚函数表解析(转)
<br /><br />C++中的虚函数的作用主要是实现了多态的机制。关于多态,简而言之就是用父类型别的指针指向其子类的实例,然后通过父类的指针调用实际子类的成员函数。这种技术可以让父类的指针有“多种形态”,这是一种泛型技术。所谓泛型技术,说白了就是试图使用不变的代码来实现可变的算法。比如:模板技术,RTTI技术,虚函数技术,要么是试图做到在编译时决议,要么试图做到运行时决议。<br />关于虚函数的使用方法,我在这里不做过多的阐述。大家可以看看相关的C++的书籍。在这篇文章中,我只想从虚函数的实现机制上面
2010-08-01 19:18:00
378
转载 理解虚基类、虚函数与纯虚函数的概念
<br />转自 :http://www.cnblogs.com/ms-frank/archive/2008/01/16/1041310.html<br />引言<br /><br /> 一直以来都没有写过一篇关于概念性的文章,因为我觉得这些概念性的东西书本上都有并且说的也很详细写来也无用,今天突发奇想想写 一写,下面就和大家讨论一下虚基类、虚函数与纯虚函数,一看名字就让人很容易觉得混乱。不过不要紧待看完本文后你就会理解了。<br /><br />正文<br /><br /> 虚基类<b
2010-06-29 10:49:00
515
原创 三:控件操作
<br /><br />三:控件操作<br /> <br />1,设置主界面显示位置:<br /> this->Top = (int)(Screen->Height- this->Height)/2;<br /> this->Left = (int)(Screen->Width - this->Width)/2;<br /> <br />2,操作所有控件(eg:锁定界面)<br /> TControl *pControl;<br /> for ( int i = 0; i < Main
2010-06-29 10:40:00
574
原创 二。容器操作
<br /><br />二。容器操作<br /> <br />1: mutimap<br /> <br />应用:把数据库的表结构转化为树结构,并层级菜单动态显示<br /> <br />eg:<br /> <br />abd d <br />abd b { e <br />acf --> a { <br />acg c { f<br />acfh g<br />
2010-06-29 10:39:00
381
原创 一.登陆,退出
判断程序是否已经启动: HANDLE hMutex = CreateMutex(NULL,true,"ProcessName"); // 用来判断程序是否已启动 if(hMutex != 0&&GetLastError() == ERROR_ALREADY_EXISTS) //已启动,退出 { App
2010-05-14 10:57:00
648
转载 (8): 使用 TMediaPlayer 录制 wav 文件
TMediaPlayer 录音是基于一个已存在的 wav 文件, 上次建立空白 wav 的函数可派上用场了. TMediaPlayer 的功能是基于 MCI 的, 都是该淘汰的东西了, 只是简单了解下. 接下来还要学习用 waveIn...系列函数录音、用 DirectSound 录音.unit Unit1; interface uses Windows, Messages,
2010-04-24 21:18:00
476
转载 (7): 建立一个空的 Wave 文件(三种方法)
unit Unit1; unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs; type TForm1 = class(TForm) procedure FormCreate(Sender: TOb
2010-04-24 21:17:00
892
原创 (6): 获取 Wave 文件的波形数据
读取函数及测试代码:unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type TForm1 = class(TForm) 读取函数及测试代码:unit Unit1;
2010-04-24 20:59:00
580
转载 (5): 获取 Wave 文件的格式信息
装载格式信息的结构有:TWaveFormat = packed record wFormatTag: Word; nChannels: Word; nSamplesPerSec: DWORD; nAvgBytesPerSec: DWORD; nBlockAlign: Word; end; TPCMWaveFormat = record wf: TWaveFormat; wBit
2010-04-24 20:57:00
493
转载 (4): 获取 Wave 文件主块与子块的信息
有两个相关的结构体: TMMIOInfo、TMMCKInfo. TMMIOInfo 是多媒体文件打开后的状态信息, mmioOpen 函数的第二个参数就是这个结构的指针; 以后还可以通过 mmioGetInfo、mmioSetInfo 使用它; 不过暂时还没有用到它. 现在先用到了 TMMCKInfo, 这是文件内部 "块" 的信息, 构成如下:TMMCKInfo = rec
2010-04-24 20:56:00
492
转载 (2): 判断一个文件是否是 Wave 文件
Wave 文件的前 12 个字节可以这样描述:TRiff = record ckId : DWORD; {RIFF} ckSize : DWORD; {文件大小, 不包括前 8 个字节} fccType : DWORD; {WAVE} end; 我们读出文件的前 12 个字节进行判断, 就基本可以确认它是不是 Wave 文件.uses MMSystem, I
2010-04-24 17:05:00
459
转载 (2): 判断一个文件是否是 Wave 文件
Wave 文件的前 12 个字节可以这样描述:TRiff = record ckId : DWORD; {RIFF} ckSize : DWORD; {文件大小, 不包括前 8 个字节} fccType : DWORD; {WAVE} end; 我们读出文件的前 12 个字节进行判断, 就基本可以确认它是不是 Wave 文件.uses MMSystem, I
2010-04-24 16:05:00
571
转载 (1): 关于 Wave 文件的基础知识与文件格式
最近准备学习 DirectSound、DirectMusic、DirectShow, 但刚一接触就碰到了关于 Wave 文件的诸多问题, 只好先回头学学 Wave 文件. Wave 文件的基础知识经常见到这样的描述: 44100HZ 16bit stereo 或者 22050HZ 8bit mono 等等.44100HZ 16bit stereo : 每秒钟有 44100 次采样, 采样数据用
2010-04-24 15:37:00
1186
转载 使用TclientDataset
由于多层应用系统经常是为了在缓慢的广域网络,或是服务大量的客户端用户,因此有效的节省网络的使用使用率便可以加快整个系统的执行效率。因此DELPHI的多层应用系统对于更新数据的设计理念便是先把更新的数据暂时储存在客户端应用程序之中,只有程序员真正决定把数据更新回后端的数据库时,必须再调用应用程序服务器提供的一个方法才会把更新的数据真正的更新回数据库之中。当程序员使用Tclient
2010-03-26 15:12:00
3713
转载 四:BDE会话期
第四章 BDE会话期 不管是单层、两层还是多层的数据库应用程序,一般都要用到BDE(BorlandDatabase Engine)。Delphi 4用TSession来管理BDE会话期对象,用TSessionList来管理和操纵一个应用程序中所有的BDE会话期对象。 一般来说,并不需要显式地把TSession构件放到窗体或数据模块上,因为数据库应用程序在每次启动时会自动创建一个默认的BDE会话
2010-03-24 13:33:00
1033
转载 三:创建多层应用程序(二)
3.5 Provider 远程数据模块上往往要放一个或几个TDataSetProvider或TProvider构件,用于提供IProvider接口。有时候,也可以不显式地使用TDataSetProvider或TProvider构件,而是由数据集构件如TTable、TQuery或TStoredProc的Provider属性间接地提供IProvider接口。 显式地使用TDataSetProvid
2010-03-24 11:33:00
1070
转载 三:创建多层应用程序
第三章 创建多层应用程序 一个多层的Client/Server应用程序在逻辑上划分为几个部分,分别在不同的机器上运行,这些机器既可以在一个局域网内,也可以在Internet上。多层体系结构最大的优势可以概括为两点,一是集中化的商业逻辑,另一个是客户程序可以做得很“瘦”。 目前较常见的是三层的体系结构,其中,最关键的是应用服务器,它在三层体系结构中起了承上启下的作用,所以,应用服务器又叫Data
2010-03-24 10:04:00
894
转载 二:单层和两层的应用程序
第二章 单层和两层的应用程序 单层和两层的数据库应用程序相对来说比较简单,应用程序和数据库往往在同一个文件系统中,甚至就在同一个磁盘上。这两种类型的数据库应用程序都不太适合于在多用户的环境下同时访问同一个数据库。 对于单层的应用程序来说,Delphi 4提供了两种获得数据的方式,一种方式是通过BDE,另一种方式是通过文件。两层的应用程序一般要使用BDE。2.1 基于BDE的应用程序 由于BD
2010-03-23 20:30:00
1102
转载 一:设计数据库应用程序
第一章 设计数据库应用程序 数据库应用程序允许用户与存储在数据库中的信息进行交互。数据库提供了信息的结构,供不同的应用程序共享。 Delphi 4支持关系型数据库。关系型数据库以行和列即表格的形式来组织信息。当您设计一个数据库应用程序时候,必须了解数据的结构,这样才能设计出一个合适的用户界面来显示数据库中的数据并且允许用户输入新的数据或者修改已有的数据。1.1 使用 数据库构件选项板的“D
2010-03-23 20:04:00
924
原创 cin 没弄明白,记录问题
---------------程序----------------------------- #include using std::iostream;#include using std::string; void main(){ string word; while(std::cin>> word) { std::cout }}
2009-11-25 16:00:00
514
转载 MYSQL_FIELD
http://www.sdau.edu.cn/support/mysq_doc/manual_Clients.html MYSQL 这个结构表示对一个数据库连接的句柄,它被用于几乎所有的MySQL 函数。 MYSQL_RES 这个结构代表返回行的一个查询的(SELECT , SHOW , DESCRIBE , EXPLAIN )的结果。从
2009-11-13 16:41:00
14800
2
转载 memset用法详解(转)
memest原型 (please type "man memset" in your shell) void *memset(void *s, int c, size_t n); memset:作用是在一段内存块中填充某个给定的值,它对较大的结构体或数组进行清零操作的一种最快方法。常见的三种错误第一: 搞反了c 和 n的位置. 一定要记住 如果要把一个char
2009-11-10 15:21:00
555
转载 使用 库创建重复键关联容器
原文出处:Use multimap to Create Associative Containers with Duplicate Keys 摘要:标准库的 multimap 容器与 map 关联容器非常类似——但是,multimap 允许重复键。这个特性使得 multimap 比想象的要有用得多。本文将对之进行探讨。 在“使用 库创建关联容器”
2009-11-10 14:45:00
419
转载 TIniFile类--使用INI配置文件,C++
在BCB中有个TIniFile类,它提供了对INI文件的操作,INI文件一种通用的配置文件格式它也象注册表一样分键和数据项,下面是一个INI配置文件的内容,它有一个键LastConfig,在这个键下有一个数据项DefaultDit,在数据项后面就是这个数据项的值。 [LastConfig] DefaultDir=E:/xxx TIniFile类有几个常用的方法给大家介绍一下: __fa
2009-11-10 13:35:00
3664
转载 STL中map用法详解
Map是STL的一个关联容器,它提供一对一(其中第一个可以称为关键字,每个关键字只能在map中出现一次,第二个可能称为该关键字的值)的数据处理能力,由于这个特性,它完成有可能在处理一对一数据时,在编程上提供快速通道。介绍一下map内部数据的组织,map内部自建一颗红黑树(一种非严格意义上的平衡二叉树),这颗树具有对数据自动排序的功能,所以在map内部所有的数据都是有序的,后面会见识到有序的好处。
2009-11-09 17:24:00
441
转载 pragma指令简介
在编写程序的时候,我们经常要用到#pragma指令来设定编译器的状态或者是指示编译器完成一些特定的动作.下面介绍了一下该指令的一些常用参数,希望对大家有所帮助! 一. message 参数。 message 它能够在编译信息输出窗 口中输出相应的信息,这对于源代码信息的控制是非常重要的。其使用方法为: #pragma message(“消息文本”) 当编译器遇到这条指令时就
2009-11-05 11:27:00
277
原创 cbc一些控件操作之菜鸟上路1
菜鸟上路······PopupMenuNode// 新建一项,并指定其响应函数。TPopupMenu *PopupMenuNode;PopupMenuNode->Items->Clear();newMenuItem = new TMenuItem(PopupMenuNode);PopupMenuNode->Items->Add(newMenuItem);newMe
2009-11-03 17:57:00
441
转载 C++ Builder VCL库函数简介(2)
四.Borland C++ Builder VCL的字符串函数 1. UpperCase 将指定的AnsiString字符串转换为大写形式,函数原型如下: AnsiString __fastcall UpperCase(const AnsiString S); 2. LowerCase 将指定的AnsiString字符串转换为小写形式,函数原型如下: AnsiString __fast
2009-10-29 15:17:00
670
转载 C++ Builder VCL库函数简介
一.BORLAND C++ BUILDER VCL的内存管理函数1. AllocMem 在队中分配指定字节的内存块,并将分配的每一个字节初始化为 0.函数原型如下: void * __fastcall AllocMem(Cardinal Size); 2. SysFreeMem 释放所指定的内存块.函数原型如下: int __fastcall SysFreeMem(void * P);
2009-10-29 15:10:00
358
转载 套接字IO模型(一) Select模型
套接字IO模型(一) Select模型讲一下套接字模式和套接字I/O模型的区别。先说明一下,只针对Winsock.套接字模式:阻塞套接字和非阻塞套接字。或者叫同步套接字和异步套接字。套接字模型:描述如何对套接字的I/O行为进行管理。Winsock提供的I/O模型一共有五种:select,WSAAsyncSelect,WSAEventSelect,Overlapped,C
2009-10-21 13:28:00
540
转载 一个关于Tsession的使用问题(摘录)
关于TSession控件 2005-09-06 13:43:42 TSession是全局性的部件,在应用程序运行时,它自动地建立,在设计阶段和运行过程中它是一个不可见的部件. TSession部件主要有下列属性:Database属性:是TSession中可以进行连接的所有数据库的数据库名字列表,这些数据库的名字常常是实际数据库的别名,包括
2009-10-13 17:39:00
845
转载 winsock编程宝典(转贴)
--简单的 Winsock 应用程式设计TCP连接建立与关闭相信各位读者现在对於 Winsock 的定义、系统环境,以及一些 Winsock Stack及 Winsock 应用程式,都有基本的认识了。接下来笔者希望能分几期为各位读者介绍一下简单的 Winsock 网路应用程式设计。我们将以 Winsock 1.1 规格所定义的 46 个应用程式介面(API)为基础,逐步来建立一对 TCP so
2009-10-09 15:22:00
667
转载 C#中的结构与类
转自:http://www.c-sharpcorner.com/UploadFile/yougerthen/403022009052133AM/4.aspx C# Corner今天发表了Bechir Bejaoui的一篇文章《What really make difference between structures and classes?》。关于结构和类的区别其实是老生常
2009-03-12 13:47:00
499
转载 指针和引用
http://writeblog.youkuaiyun.com/PostEditPlain.aspx一、先看一段代码: #include using namespace std;void freePtr1(int* p1){ delete p1; p1 = NULL;}void freePtr2(int*& p2){ delete p2;
2009-02-27 19:16:00
344
转载 观察者模式,事件,委托
using System;using System.Collections.Generic;using System.Text;//一、 观察者模式//目的//概述//原理//二、 C#中的观察者模式//概述//模型与观察者基类//优点//三、 事例//题目:猫大叫,两只老鼠开始逃跑,主人醒来,宝宝也醒来了并且哭了起来//解决方案://1. 建立模型(
2009-02-19 19:45:00
2038
转载 Asp.Net架构-1 HTTP请求处理流程
asp.net由一系列类组成,其主要目的将HTTP请求转变成对客户端的响应。HttpRuntime类是asp.net的一个主要入口,它有一个称作ProcessRequest的方法,这个方法有一个HttpWorkerRequest类作为参数。HttpRuntime类几乎包含关于单个HTTP请求的所有信息:所请求的文件,服务器端变量,QueryString,Http头信息等。
2009-01-12 14:37:00
442
原创 Sony 笔试题
1.完成下列程序**.*. *..*..*.. *...*...*...*... *....*....*....*....*....*.....*.....*.....*.....*.....*..... *......*......*......*......*......*......*......*.......*.......*.......*.......*.......*.......
2008-10-31 16:45:00
440
转载 typedef struct用法详解
例子:typedef struct tagNode { char *pItem; struct tagNode *pNext;} *pNode;正文:1. 基本解释 typedef为C语言的关键字,作用是为一种数据类型定义一个新名字。这里的数据类型包括内部数据类型(int,char等)和自定义的数据类型(struct等)。 在编程中使用typedef目的一般有两个,一个是给
2008-10-31 16:29:00
810
原创 各种排序方法的综合比较
http://166.111.4.54:2000/(里面有数据结构的全部知识点,讲得很好)http://www.sgrtvu.net.cn/jx_data/lg_data/wrl/sj_gc/zksjjg/sjjg_tj/s8.html(里面有很多很不错的问题,并且附有答案)各种排序方法的综合比较结论: 排序方法 平均时间 最坏时间 辅助存储 简单排序 O(n2) O(n
2008-10-18 11:52:00
800
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人