- 博客(15)
- 资源 (63)
- 收藏
- 关注
原创 虚函数和抽象函数的区别
虚函数是有代码的并明确允许子类去覆盖,但子类也可不覆盖,就是说可以直接用,不用重写 抽象函数是没有代码,子类继承后一定要重写 在一个类中用虚函数: 是因为在超类中的有实际代码的方法,但明确允许子类可以作重写 而且当子类重写后,可以用子类实例超类;如果这样,超类变量调用虚函数时,执行的是子类的方法 在一个类中用抽象函数 是在写超类时不确定函数的代码,让子类去实现
2008-12-18 13:20:00 16756
原创 可以使用抽象函数重写基类中的虚函数吗
答:可以需使用 new 修饰符显式声明,表示隐藏了基类中该函数的实现或增加 override 修饰符,表示抽象重写了基类中该函数的实现示例: class BaseClass { public virtual void F() { Console.WriteLine("BaseClass.F"
2008-12-18 13:10:00 1086
原创 c语言中static 变量和函数
1. static 变量静态变量的类型 说明符是static。 静态变量当然是属于静态存储方式,但是属于静态存储方式的量不一定就是静态变量。 例如外部变量虽属于静态 存储方式,但不一定是静态变量,必须由 static加以定义后才能成为静态外部变量,或称静态全局变量。2. 静态局部变量静态局部变量属于静态存储方式,它具有以下特点:(1)静态局部变量在函数内定义 它的生存期为整个源程序
2008-12-18 12:42:00 2044 1
原创 C#虚函数virtual详解
在C++、Java等众多OOP语言里都可以看到virtual的身影,而C#作为一个完全面向对象的语言当然也不例外。虚拟函数从C#的程序编译的角度来看,它和其它一般的函数有什么区别呢?一般函数在编译时就静态地编译到了执行文件中,其相对地址在程序运行期间是不发生变化的,也就是写死了的!而虚函数在编译期间是不被静态编译的,它的相对地址是不确定的,它会根据运行时期对象实例来动态判断要调用的函数,其中那
2008-12-16 19:18:00 891
原创 C#中的委托和事件(六)
.Net Framework中的委托与事件尽管上面的范例很好地完成了我们想要完成的工作,但是我们不仅疑惑:为什么.Net Framework 中的事件模型和上面的不同?为什么有很多的EventArgs参数?在回答上面的问题之前,我们先搞懂 .Net Framework的编码规范:委托类型的名称都应该以EventHandler结束。 委托的原型定义:有一个void返回值,并
2008-12-11 20:59:00 712 1
原创 C#中的委托和事件(五)
委托、事件与Observer设计模式范例说明上面的例子已不足以再进行下面的讲解了,我们来看一个新的范例,因为之前已经介绍了很多的内容,所以本节的进度会稍微快一些:假设我们有个高档的热水器,我们给它通上电,当水温超过95度的时候:1、扬声器会开始发出语音,告诉你水的温度;2、液晶屏也会改变水温的显示,来提示水已经快烧开了。现在我们需要写个程序来模拟这个烧水的过程,我们将定义一
2008-12-11 20:58:00 604
原创 C#中的委托和事件(四)
事件和委托的编译代码这时候,我们不得不注释掉编译错误的行,然后重新进行编译,再借助Reflactor来对 event的声明语句做一探究,看看为什么会发生这样的错误:public event GreetingDelegate MakeGreet;可以看到,实际上尽管我们在GreetingManager里将 MakeGreet 声明为public,但是,实际上MakeGreet
2008-12-11 20:57:00 703 1
原创 C#中的委托和事件(三)
事件的由来我们继续思考上面的程序:上面的三个方法都定义在Programe类中,这样做是为了理解的方便,实际应用中,通常都是 GreetPeople 在一个类中,ChineseGreeting和 EnglishGreeting 在另外的类中。现在你已经对委托有了初步了解,是时候对上面的例子做个改进了。假设我们将GreetingPeople()放在一个叫GreetingManager的类中
2008-12-11 20:56:00 587
原创 C#中的委托和事件(二)
将方法绑定到委托看到这里,是不是有那么点如梦初醒的感觉?于是,你是不是在想:在上面的例子中,我不一定要直接在GreetPeople()方法中给 name参数赋值,我可以像这样使用变量:static void Main(string[] args) { string name1, name2; name1 = "Jimmy Zhang"; nam
2008-12-11 20:54:00 561
原创 C#中的委托和事件(一)
引言委托 和 事件在 .Net Framework中的应用非常广泛,然而,较好地理解委托和事件对很多接触C#时间不长的人来说并不容易。它们就像是一道槛儿,过了这个槛的人,觉得真是太容易了,而没有过去的人每次见到委托和事件就觉得心里别(biè)得慌,混身不自在。本文中,我将通过两个范例由浅入深地讲述什么是委托、为什么要使用委托、事件的由来、.Net Framework中的委托和事件、委托和
2008-12-11 20:50:00 584
原创 sql中rtrim的用法
以下是OCP教材中对该函数的描述RTRIM(, ) takes two arguments, where c1 and c2 are characterstrings. This function returns c1 without any trailing characters that appearin c2. If no c2 cha
2008-12-02 19:04:00 6950
原创 stuff的用法
以下示例在第一个字符串 abcdef 中删除从第 2 个位置(字符 b)开始的三个字符,然后在删除的起始位置插入第二个字符串,从而创建并返回一个字符串。SELECT STUFF(abcdef, 2, 3, ijklmn)GO结果为 aijklmnef
2008-12-02 18:41:00 1245
原创 TimeSpan 用法 求离最近发表时间的函数
求离最近发表时间的函数public string DateStringFromNow(DateTime dt) { TimeSpan span = DateTime.Now - dt; if (span.TotalDays > 60) { return dt.ToShortDateString(); } else if ( spa
2008-12-02 18:14:00 1333 1
原创 SQL截取字符串
关键字: 字符串 截取 SUBSTRING 返回字符、binary、text 或 image 表达式的一部分。有关可与该函数一起使用的有效 Microsoft® SQL Server™ 数据类型的更多信息,请参见数据类型。 语法 SUBSTRING ( expressio
2008-12-01 22:14:00 6045 1
原创 C#中substring的用法
C#中有两个重载函数 举例如下代码,VS2005编译通过 using System; using System.Collections.Generic; using System.Text; namespace sln_sub { class Program { static void Main(string[] args) { string myString =
2008-12-01 21:56:00 6318 2
揭开FND函数的神秘面纱
2012-07-11
Oracle Applications Flexfields Guide Release 12.pdf
2012-06-09
Oracle__Applications__Developer*s_Guide.pdf
2012-06-04
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人