2011年4月22日

C#代码动态编译、动态执行、动态调试

摘要: C#代码动态编译、动态执行、动态调试Author:Eaglet 前几天看到一篇关于.net动态编译的文章 .NET中的动态编译 ,很受启发。在此基础上我做了一些封装,为使调用更加简单,并增加了对动态代码调试的支持,相同代码只编译一次的支持,代码改动自动重新编译,代码引用文件的自动加载和手工加载等功能。 如上图,我封装的类CSharpProvider很简单,下面说明一下一些公共成员的用法。 公共属性 AssemblyFileName:这个属性指定动态编译后生成的配件名称。 CompilerParameters:这个属性指定编译的参数 References:这个属性指定被编译代码中的引用。调用者只 阅读全文

posted @ 2011-04-22 14:08 seoxs 阅读(781) 评论(0) 推荐(0) 编辑

C#中class与struct的区别

摘要: 类与结构的实例比较 类与结构的差别 如何选择结构还是类 一.类与结构的示例比较: 结构示例: public struct Person { string Name; int height; int weight public bool overWeight() { //implement something } } 类示例: public class TestTime { int hours; int minutes; int seconds; public void passtime() { //implementation of behavior } } 调用过程: public clas 阅读全文

posted @ 2011-04-22 14:06 seoxs 阅读(277) 评论(0) 推荐(0) 编辑

C# 参考之上下文关键字get、set、value、partial、where和yield

摘要: 上下文关键字用于提供代码中的特定含义,但它不是 C# 中的保留字。get、set、valueget 在属性或索引器中定义“访问器”方法,以检索该属性或该索引器元素的值。set 义属性或索引器中的“访问器”方法,用于设置属性或索引器元素的值。value 隐式参数,用于设置访问器以及添加或移除事件处理程序。//简单示例classEmployee{privatestring_name;publicstringName{get{returnthis._name;}set{this._name=value;}}}注意:get、set“访问器”,在默认情况下具有相同的访问级别。但是有时鉴于对读写的考虑,通 阅读全文

posted @ 2011-04-22 14:05 seoxs 阅读(690) 评论(0) 推荐(0) 编辑

C# 调用 Google Earth Com API开发(三)

摘要: 好久没有更新《C#调用Google Earth Com API开发》系列文章了,今天带给大家的是第三篇,本篇相对于第二篇主要改进了三个方面。1) 实现GoogleEarth显示画面随窗口大小改变而改变2) 截获GoogleEarth鼠标消息,实现单击、双击功能;鼠标滚轮缩放现在只能放大!O(∩_∩)O~3) 实现GoogleEarth彩色截图(测试环境:Windows 2003 Server ,Vista与Win7中不可用,XP未测)下面还是继续看代码:1、GoogleEarth动态改变大小 1: /// <summary> 2: /// 重新改变GoogleEarth视图的大小 阅读全文

posted @ 2011-04-22 11:00 seoxs 阅读(524) 评论(2) 推荐(0) 编辑

C#调用GoogleEarth COM API开发(一)

摘要: 一、准备Google Earth提供了个人免费版、Plus版、Pro版,个人开发只安装个人免费版就可以了,如果需要更多的功能,那么只有每年上交$400购买专业版了到目前为止,GoogleEarth的二次开发接口还比较少,功能太弱,仅仅提供了1.0的类库。GoogleEarth COM API参考文档可以在这里找到:http://earth.google.com/comapi/index.htmlC#调用COM的参考资料多如牛毛,大家可以到网上搜一下二、例子这里提供一个利用VS2008 + Google Earth 5.0开发一个“Hello world”程序首先,确保已经正确安装GE,打开VS 阅读全文

posted @ 2011-04-22 09:19 seoxs 阅读(456) 评论(0) 推荐(1) 编辑

关于C#中Thread.Join()的一点理解

摘要: 今天是第一次在C#中接触Thread,自己研究了一下其中Thread.Join()这个方法,下面谈谈自己的理解。 Thread.Join()在MSDN中的解释很模糊:Blocks the calling thread until a thread terminates有两个主要问题:1.什么是the calling thread? 2.什么是a thread? 首先来看一下有关的概念: 我们执行一个.exe文件实际上就是开启了一个进程,同时开启了至少一个线程,但是真正干活的是线程,就好比一个Team有好几个人,但是真正干活的是人不是Team. 具体到代码来说,以Console Applica. 阅读全文

posted @ 2011-04-22 09:17 seoxs 阅读(366) 评论(1) 推荐(0) 编辑

C# .NET学习经验总结

摘要: 1. 装箱、拆箱还是别名 许多介绍C# .NET学习经验的书上都有介绍 int -> Int32 是一个装箱的过程,反之则是拆箱的过程。许多其它变量类型也是如此,如:short <-> Int16,long <-> Int64 等。对于一般的程序员来说,大可不必去了解这一过程,因为这些装箱和拆箱的动作都是可以自动完成的,不需要写代码进行干预。但是我们需要记住这些类型之间的关系,所以,我们使用“别名”来记忆它们之间的关系。 C# 是全面向对象的语言,比 Java 的面向对象都还彻底——它把简单数据类型通过默认的装箱动作封装成了类。Int32、Int16、Int64 阅读全文

posted @ 2011-04-22 09:14 seoxs 阅读(442) 评论(0) 推荐(0) 编辑

导航