博文
[asp.net]控件(Control)学习笔记(2006-09-01 17:37:00)
摘要:[注]大部分源码拷自《ASP.NET程序设计实用教程》
6.验证控件
控件名
功能描叙
RequiredFieldValidator(必须字段验证)
用于检查是否有输入值
CompareValidator(比较验证)
按设定比较两个输入
RangeValidator(范围验证)
输入是否在指定范围
RegularExpressionValidator(正则表达式验证)
正则表达式验证控件
CustomValidator(自定义验证)
自定义验证控件
ValidationSummary(验证总结)
总结验证结果
实例一: 必须字段验证控件(RequiredFieldValidator)
<%@ Page clienttarget=downlevel Language="C#" %>
<Form RunAt="Server">
<ASP:TextBox id="txtName" RunAt="Server"/>
<ASP:RequiredFieldValidator id="Validator1" Runat="Server"
ControlToValidate="txtName"
ErrorMessage="姓名必须输入"
Display="Static">
*姓名必须输入
</ASP:RequiredFieldValidator>
</Form>
实例二:比较验证控件(CompareValidator) 通常用于两次密码输入比较
<%@ Page clienttarget=downlevel Language="C#" %>
<form runat="server">
<b>密码1:</b>
<asp:TextBox id="passwd1" TextMode="Password" runat="server" />
<br><b>密码2:</b>
<asp:T......
[asp.net]控件(Control)学习笔记(2006-09-01 17:36:00)
摘要:[注]大部分源码拷贝自《ASP.NET程序设计实用教程》
控件
前言:
ASP.NET支持三种控件:Web服务器端控件,HTML服务器端控件和用户自定义控件.
Web服务器控件是.NET推荐使用的控件,Web服务器端控件除了常用的输入输出控件以外,还包括验证控件.
ASP.NET页面的处理过程
当用户通过客户端浏览器发出一个对ASP.NET页面的请求后,Web服务器交由ASP.NET引擎来处理.
页面是否已经被编译成DLL.若在输出缓冲中找不到此页面或找不到编译过的DLL文件,则将此页面转换成源代码,然后由编译器将其编译成DLL文件.
如果找到了编译过的DLL文件,则省略了编译的步骤,而是直接利用编译过的DLL文件建立对象,将执行结果返回到客户端浏览器.所以在执行的时候,ASP.NET文件第一次被调用的时候非常慢,但是以后调用就很快了.(这也正是ASP.NET的一个很大的优点)
1.理解服务器端控件:包含runat=server/>
2.页面事件:
Page_Load();在页面被加载自动调用.
控件事件:由用户在客户端浏览器上触发的各种事件.
Page_Unload();当页面从内存中卸载的时候调用.
附:用IsPostBack为真表示页面被执行过.
3.页面指示符
指示符
说明
@Page
定义页面特性,只能在.aspx文件中
@Control
定义用户控件特性。只能在.ascx文件中
@Import
导入名字空间,使用名字空间中定义的类
@Implements
指定当前页面实现的.NET框架接口
@Register
用来注册用户控件
@Assembly
用来引用.NET组件
@OutputCache
用来设置输出缓冲的特性
@Reference
定义当前页运行时要动态编译和连接的页面和用户控件
4.HTML服务器端控件
实例一: HTMLANCHOR控件.
<% @ Page L......
[asp.net]C#学习笔记(2006-08-30 08:34:00)
摘要:C#程序设计基础(即C#学习笔记)
学习时间:2006-8-26至2006-8-29
2006-8-29晚整理
前言:
n C#是微软公司专门为.NET量身定做的编程语言,它与.NET有着密不可分的关系。
n C#的类型就是.NET框架所提供的类型,C#本身并无类库,而是直接使用.NET框架所提供的类库。
n 另外,类型安全检查、结构化异常处理也都是交给CLR处理的。因此,C#是最适合开发.NET应用的编程语言。
C#作为.NET的原生语言,功能非常强大。
主要分析C#的变量、常量、控制语句、C#类的基本使用方法、C#的异常处理和C#语言面向对象的高级特性。
1.一个简单的C#程序:
using System;
class Hello{
public static void Main() {
Console.WriteLine("您好! ");
}
}
由上可以看出C#需using System等命名规则.
不加 using System,则需
class Hello{
public static void Main() {
System Console.WriteLine("您好! ");
}
}
2.ReadLine()读入数据,WriteLine()输出数据.
3.C#使用与C/C++相同的注释规则.
4.数据类型: 分为值类型(value type)和引用类型(refertence type)
Value type: simple type(普通常用数据类型),struct type(结构),Enum type(枚举).
Refertence type: class type(类),array type(数组),delegate type(代表类型).
......
[暴料]标哥档案(2006-08-25 10:35:00)
摘要:张星标(外号标哥) 男 1985年10月 暨南大学珠海学院 学号2003410192136 江西崇仁县人士
在校期间学习成绩优秀,多次获得国家奖学金和校奖学金.
联系方式:略.
以上纯属暴料,如有不妥请联系我!
至于照片就免了吧(其实和我差不多)
应LOVE-ME的强烈要求,特将标哥的一张酷照贴上....
......
[STL学习笔记]C++标准库技术(一)(2006-08-22 08:09:00)
摘要:
<2006年7月20日>
[概要]C++标准库简介,C++输入/输出流技术,C++字符串技术,标准异常类.
[摘录]C++标准库很大,在现在的情况下,C++标准库确实越来越好,因为大的库会包含大量的功能.标准库中的功能越多,开发自己的应用程序时能借助的功能就越多,C++库并非提供一切(很明显的是没有提供开发和图形用户接口的支持),但确实提供了很多.标准C++库中主要有以下主要组件:
■ 标准C库.
■ I/0流技术.
■ String.
■ 容器.
■ 算法.
■ 对国际化的支持.
■ 对数字处理的支持.
■ 诊断支持.
标准库中容器和算法这部分一般称为标准模板库.STL中实际上还有第三个构件------迭代器(iterator).迭代器是指针似的对象,它让STL算法和容器共同工作.
[C++标准库简介]标准库中东西很多,程序员所选择的类名或函数名很有可能和标准库中的某个名字相同.为了避免这种情况所造成的名字冲突,实际上标准库中的一切被放到了命名空间STD中,以前学习C++时也接触过少许,但老师没有细讲,本人也没有深究.但这带来了一个新问题.无数现有C++代码以来于使用了多年的伪标准库中的功能,例如<iostream.h>,<complex.h>,<stdio.h>等头文件功能.现有软件没有针对使用命名空间而进行设计,如果用std来包装标准库导致现有代码不能用,将会得不偿失.
为减轻程序员负担,标准委员会决定为包装了std的那部分标准库构件创建新的头文件名.
如我们后来使用的<iostream>,<cstdio>,<complex>等都是来自新的命名规则.
下面是C++头文件的现状:
■ 旧的C++头......
暑假完了。(2006-08-16 14:27:00)
摘要:一个月有点短暂,不过着实学到了东西。
明天就班师回朝! 有必要做个小结。
应该分成两段来看,前半个月(八月前),一直在渴望找到一份对口的实习岗位,可天不随人愿,或则是凭自己的“内涵” 还不足以应付简单的开发工作,或则停留时间太短!着实干不了什么事情。 最后还是在一家小公司混了下来。偶尔接待一下客户,老大不在,只有我顶着,薪水没有,人倒很闲。
八月份,纯粹的为自己找了个“捞钱”的理由,经济的欠缺让我无法忽视这个环节。
一切都好,尽管每天跑公交,不是怎么轻松,感觉还瞒充实的,在所住的地方接触了不少华为员工,貌似他们总是活在“匆忙”中,加班到23点是常事。这个号称“基地”的“圣地”到处都充斥着一股蔑视一切的“狼性文化”。“过劳死”外人看来好像不可思议,但当你接触那些“狂人”后,会感觉都正常了,发生在他们身上。
下面是一些数据,或许能反映出一些问题来!
一.停留时间32天,与去年同期,下降25%。
二.接触朋友“亲和度”同期增加 200-300%。
三.工作时间和去年相当。
四.挫折度增加 50%左右。
五.捞钱数 同比增长 110%。
六.进一步懂得“为人之道”(当然最重要的)。
七.通读《C++ STL程序员开发指南》以及复习高等数学 极限,微分部分。
还有一些情况。
一.期间和某人发生纠葛,后来不得不找来“条子”来解决。
二.失去一些增长知识的机会,比如 ICPC集训。
三.又没回家。
有得又有失,不过整体还算差强人意。
......
[STL学习笔记]概要(2006-07-26 00:45:00)
摘要:STL(Standard Template Library)
参考书籍:《C++ STL程序员开发指南》
<2006年7月14日>
以下红色字体为STL概要(摘录自C++ STL程序员开发指南前言部分)
1998年,C++标准正式通过,并且将在接下来的一段时间中保持一种稳定的状态。它既是ANSI标准,也是ISO标准,也就是说,它既是美国的国家标准,也是一种全球通用的标准。作为标准化进程的一部分,整个标准C++语言及库第一次完整地描述在一起。一个相对较晚加入这个标准化进程的时间是在C++标准的草案中接纳STL位C++标准的一部分。同样,在1994年6月被标准化委员会接纳为C++标准草案的一部分之前,对STL的早期描述(至少早于S&L95)仅限于一个相对狭窄的范围内。 在接纳的过程中,STL本身又被重新组织并且在几个重要的环节做了修改。现在,在标准C++中的STL已经不再是由惠普实验室开发出来的那套软件开发包,同时它与那些由不同的代理提供的强化版也不同。
STL能够给编程人员带来很多的好处,比如熟悉了C++ STL编程思想后,很多用传统的C++编写的代码实际上用几句STL编码就可以实现。通过调用一两个算法模板,就可以得到一些幽雅但绝对高效的代码,所以STL技术出现以来就一直非常流行,而且发展劲头强劲。近几年来,国内也掀起了一股STL热,要掌握C++ STL技术,必须精通C++高级编程技术,而C++过度到C++ STL,对很多爱好者来说是一片茫然。
STL的学习从而有个过度阶段,如下图所示!
&nb......
简单五子棋人机对弈(19×19)二(2006-06-29 10:43:00)
摘要:上一页
8.void robot()
也是人机对弈五子棋最核心的部分,其中包括了评价机制,估值,搜索部分
搜索空格的八个方向,如:
1 0 2
7 空格 3
6 5 4
最后将权值最大的几个点的位置信息保存于xposition[]与yposition[]数组中,如果极值权重相同,使用随机函数选择其中一点下棋。
void robot(void)
{
int x, y, X, Y, i, j;
int *p, *mp; //用于指向特定数组
long int xposition[38], yposition[38]; //存储相同得权值
long int max; //当前最大权值
//将空格信息填入特定数组,用于bot评分并下子,将 360 度分成 8 个方向
//即同一个空格可能五子相连的八个方向,具体看 readme 文件
for( X = 0; X < 19; X++) //0方向检查
for( Y = 18; Y > 4; Y--)
&nb......
简单五子棋人机对弈(19×19)一(2006-06-29 10:39:00)
摘要:【概述】五子棋是一种大众喜爱的游戏,其规则简单,变化多端,非常富有趣味性何消遣性。这里设计了一个简单的五子棋程序,采用对空格点进行评分排序的算法。
近来随着计算机的快速发展,各种棋类游戏被纷纷请进了电脑,使得那些喜爱下棋,又常常苦于没有对手的棋迷们能随时过足棋瘾。而且这类软件个个水平颇高,大有与人脑分庭抗礼之势。其中战胜过国际象棋世界冠军-卡斯帕罗夫的“深蓝”便是最具说服力的代表;其它像围棋的“手淡”、象棋的“将族”等也以其优秀的人工智能深受棋迷喜爱;而我也做了一个“无比”简单的五子棋算法。 总的来说(我们假定您熟悉五子棋的基本规则),要让电脑知道该在哪一点下子,就要根据盘面的形势,为每一可能落子的点计算其重要程度,也就是当这子落下后会形成什么棋型(如:“冲四”、“活三”等),然后通览全盘选出最重要的一点,这便是最基本的算法。
主程序模块包括:数据结构,评分规则,胜负判断,搜索最优空格的算法过程。
【关键字】人工智能,博弈树,五子棋,无禁手,评分,搜索,C,随机。
【环境】XP/TC3.0
【算法及解析】(无禁手)
一. 数据结构:
本程序中只使用了一个19×19的二元结构数组如下定义:
Typedef Struct
{
int player;
int value[8][5];
long int score;
}map[19][19];
其中map[i][j]保存i行j列棋子信息,player为下棋方,value数组记录八个方向的连续5个棋子的信息,为以后评分服务。Score为空格评分。
以及数据结构可以满足初级人机对弈程序的功用。
对比其他程序结构:
王小春五子棋源码:该程序采用......
阪本龙一《Casa 故乡的Bossa Nova》(2006-06-28 17:47:00)
摘要:
阪本龙一与莫瑞兰包姆二重奏这对夫妻档结识了十年时光。演奏大提琴的是贾克,拥有丝绸般细致嗓音的宝拉则负责演唱,加上阪本龙一的钢琴,三人组合成《M2S》这个团体。M2S经常在裘宾生前经常居住的里约热内卢别墅中合奏,也因此激汤出灌录一系列裘宾作品的芭莎诺瓦专辑的概念。由于是在裘宾的家中衍生的想法,所以他们的第一张专辑才名为“Casa”(也就是“家”的意思),来纪念永远的“Bossa Nova之父”安东尼奥-卡洛-裘宾先生。 继全球畅销专辑BTTB之后,阪本龙一首度尝试巴西的音乐至宝Bossa Nova,带来浓浓的夏日风情,是阪本龙一出道以来最令人惊艳的完美演出。 专辑中收录了Bossa Nova音乐之父安东尼卡洛裘宾(Antonio Carlos Jobim)作品首度录音,十八首曲目中大部分是裘宾未曾公开发表过的罕见创作,其中包括写给爱妻安娜的《Tema Para Ana》;献给法国爵士配乐大师Michel Legrand的《Chanson Pour Michelle》;以及裘宾之子Paulo Jobim参与演出的《Bonita》。 阪本龙一选择与裘宾晚期合作的伙伴Jacques & Paula Morelenbaum夫妇共同合作,默契上没话说,将裘宾的音乐精髓百分之百地表达出来。 “BOSSA NOVA之父”─安东尼卡洛裘宾(Antonio Carlos Jobim)是一位永不喊累的作曲大师〈A Tireless Songwriter〉,他把创作当成一种享受。就像唐代田园诗人王维一般,裘宾喜欢捕捉片刻的画面,聚焦为创作的灵感;在裘宾的作品中,我们总是能听到海浪、微风,与椰影婆娑,每一首裘宾的作品都是一幅画作,从海滩,从夜空,化为永远传唱的音符。位于里约热内卢海边的居所是裘宾创作灵感的泉源(注意到了吗?CD上的封面就是裘宾的故居),打开窗,飘进来的是海鸥与浪花的歌唱、阳光与海水的味道﹔俯拾皆是的浪漫,一砖一瓦地砌出了裘宾的音乐城堡。 阪本龙一的音乐作品包罗万象,从最为人所知的电影配乐、日本古乐、电子实验创作,到这次全新尝试的BOSSA NOVA,都令人感受到其勇于突破自我格局的期许。有了配乐大师阪本龙一的加入,让BOSSA NOVA音乐向性起了重大的化学变化。原本游走于慵懒与热情的BOSSA NOVA,披上了阪本特有的「冷静......
