面试题
面试题
yulongguiziyao
这个作者很懒,什么都没留下…
展开
-
string和stringbuilder的区别
String 对象是不可改变的。每次使用 System.String 类中的方法之一或进行运算时(如赋值、拼接等)时,都要在内存中创建一个新的字符串对象,这就需要为该新对象分配新的空间。而 StringBuilder 则不会。在需要对字符串执行重复修改的情况下,与创建新的 String 对象相关的系统开销可能会非常昂贵。如果要修改字符串而不创建新的对象,则可以使用 System.Text.Stri转载 2013-11-25 20:19:02 · 614 阅读 · 0 评论 -
List和ArrayList的区别
List是一个接口,而ListArray是一个类。 ListArray继承并实现了List。 所以List不能被构造,但可以向上面那样为List创建一个引用,而ListArray就可以被构造。List list; //正确 list=null; List list=new List(); // 是错误的用法 List list = new转载 2013-11-27 20:08:40 · 515 阅读 · 0 评论 -
C#如何直接调用非托管代码
C#如何直接调用非托管代码,通常有2种方法:1. 直接调用从DLL导出的函数。2. 调用 COM对象上的接口方法我主要讨论从dll中导出函数,基本步骤如下:1.使用C#关键字static和extern声明方法。2.将DllImport属性附加到该方法。DllImport属性允许您指定包含该方法的DL转载 2013-11-27 20:40:58 · 1572 阅读 · 0 评论 -
托管代码与非托管代码的区别
托管代码(Managed Code)就是中间语言(IL)代码,在公共语言运行库(CLR)中运行。编译器把代码编译成中间语言,当方法被调用时,CLR把具体的方法编译成适合本地计算机运行的机器码,并且将编译好的机器码缓存起来,以备下次调用使用。随着程序集的运行,CLR提供各种服务:内存管理,安全管理,线程管理,垃圾回收,类型检查等等。 非托管代码,直接编译成目标计算机码,由操作系统直接转载 2013-11-27 20:48:09 · 1628 阅读 · 0 评论 -
C/S 与 B/S 区别
C/S结构,即Client/Server(客户机/服务器)结构,是大家熟知的软件系统体系结构,通过将任务合理分配到Client端和Server端,降低了系统的通讯开销,可以充分利用两端硬件环境的优势。早期的软件系统多以此作为首选设计标准。。B/S结构,即Browser/Server(浏览器/服务器)结构,是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。在这种转载 2013-12-02 11:38:16 · 597 阅读 · 0 评论 -
调整数组顺序使奇数位于偶数前面
题目:输入一个整数数组,调整数组中数字的顺序,使得所有奇数位于数组的前半部分,所有偶数位于数组的后半部分。要求时间复杂度为O(n)。方法:设2个头尾指针begin和end, begin从头往前遍历,遇到奇数的话,说明这个数在在正确的位置,所以继续往前遍历直到遇到第一个偶数。同样end指针从后往前遍历,遇到偶数的话,说明这个数在正确的位置,所以继续往前遍历,直到遇到第一个转载 2013-12-08 20:44:17 · 633 阅读 · 0 评论 -
我国三大常用坐标系区别
1、北京54坐标系(BJZ54)北京54坐标系为参心大地坐标系,大地上的一点可用经度L54、纬度M54和大地高H54定位,它是以克拉索夫斯基椭球为基础,经局部平差后产生的坐标系。1954年北京坐标系的历史:新中国成立以后,我国大地测量进入了全面发展时期,再全国范围内开展了正规的,全面的大地测量和测图工作,迫切需要建立一个参心大地坐标系。由于当时的“一边倒”政治趋向,故我国采用了转载 2013-12-09 20:15:33 · 4001 阅读 · 0 评论 -
常用GIS数据格式
GIS数据不仅表达空间实体(真实体或者虚拟实体)的位置和几何形状,同时也记录空间实体对应的属性,这就决定了GIS数据源包含有图形数据(又称空间数据)和属性数据两部分。图形数据又可以分为栅格格式和矢量格式两类。传统的GIS一般将属性数据放在关系数据库中,而将图形数据存放在专门的图形文件中。不同的GIS软件采取不同的文件存储格式。 比较常用的GIS数据格式有:Mapifo(*.TA转载 2013-12-09 20:07:13 · 8200 阅读 · 0 评论 -
静态变量
静态变量就是在程序执行之前系统就为其分配内存,在程序执行中不在改变。静态变量不像自动变量那样当被调用时就存在,退出函数时就消失,其生存周期为整个源程序。原创 2013-12-04 21:46:15 · 579 阅读 · 0 评论 -
冒泡排序
冒泡排序的程序转载 2013-12-12 20:55:51 · 506 阅读 · 0 评论 -
遍历控件
使用递归方法遍历所有控件,包括容器控件的子控件cl.HasChildren表示如果cl控件有子控件原创 2013-12-12 20:13:35 · 605 阅读 · 0 评论 -
Remoting和Webservice的区别
其实现的原理并没有本质的区别,在应用开发层面上有以下区别:1、Remoting可以灵活的定义其所基于的协议,如果定义为HTTP,则与Web Service就没有什么区别了,一般都喜欢定义为TCP,这样比Web Service稍为高效一些2、Remoting不是标准,而Web Service是标准;3、Remoting一般需要通过一个WinForm或是Windows服务进行启动,转载 2013-11-27 19:57:01 · 823 阅读 · 0 评论 -
4D数据介绍
4D数据包括DLG(数字线画地图)、DEM(数字高程模型)、DOM(数字正射影像地图)、DRG(数字栅格地图)。DLG数字线划地图(DLG, Digital Line Graphic):是与现有线划基本一致的各地图要素的矢量数据集,且保存各要素间的空间关系和相关的属性信息。> 在世字测图中,最为常见的产品就是数字线划图,外业测绘最终成果一般就是DLG。该产品较全面转载 2013-11-27 20:36:50 · 3292 阅读 · 0 评论 -
Silverlight布局控件
布局控件在Silverlight应用程序中是必需的,它用来管理你应用中的其它控件(包括布局控件)。你可以把布局控件想象为“容器”。我们经常使用的布局控件有三个:这三个控件都继承于Panel,具体详情请查看官方文档。Grid:表格,通过列和行指定对象的位置StackPanel:一个接一个的排列对象Canvas:按照其中控件的绝对位置布局转载 2013-11-27 21:04:39 · 666 阅读 · 0 评论 -
委托
委托是一种引用方法的类型。一旦为委托分配了方法,委托将与该方法具有完全相同的行为。委托方法的使用可以像其他任何方法一样,具有参数和返回值,如下面的示例所示:C#复制public delegate int PerformCalculation(int x, int y);与委托的签名(由返回类型和参数组成)匹配的任何方法都可以分配给转载 2013-11-25 22:02:42 · 544 阅读 · 0 评论 -
ADO.NET中的五个主要对象
Connection 物件 Connection 对象主要是开启程序和数据库之间的连结。没有利用连结对象将数据库打开,是无法从数据库中取得数据的。这个物件在ADO.NET 的最底层,我们可以自己产生这个对象,或是由其它的对象自动产生。Command 物件 Command 对象主要可以用来对数据库发出一些指令,例如可以对数据库下达查询、新增、修改、删除数据等指令,以及呼叫存在转载 2013-11-25 20:26:09 · 874 阅读 · 0 评论 -
TCP与UDP的区别,以及它们各自的定义
TCP(Transmission Control Protocol,传输控制协议)是基于连接的协议,也就是说,在正式收发数据前,必须和对方建立可靠的连接。一个TCP连接必须要经过三次“对话”才能建立起来,其中的过程非常复杂,我们这里只做简单、形象的介绍,你只要做到能够理解这个过程即可。我们来看看这三次对话的简单过程:主机A向主机B发出连接请求数据包:“我想给你发数据,可以吗?”,这是第一次对话;主转载 2013-11-25 21:13:04 · 856 阅读 · 0 评论 -
设计模式
待整理转载 2013-11-25 21:15:29 · 444 阅读 · 0 评论 -
net错误处理机制
没有不出错的软件 从不出错的软件从某种程度上讲是不可能的! 和普通人的观念相反,创造可信赖的,健壮的软件并不是一件不可能的事情。大部分的商业软件,在长时间可以无重大故障的工作,但它们并非没有任何的错误,只是拥有低出错率,你可以迅速理解出错原因然后快速搞定它,并且,它不会因为外部错误而毁坏数据。软件中有错误是可以原谅的,甚至是可以预料到的;不可原谅的是您无转载 2013-11-27 10:30:09 · 1915 阅读 · 0 评论 -
.net如何实现页面间的参数传递
使用QueryString使用QuerySting在页面间传递值已经是一种很老的机制了,这种方法的主要优点是实现起来非常简单,然而它的缺点是传递的值是会显示在浏览器的地址栏上的(不安全),同时又不能传递对象,但是在传递的值少而安全性要求不高的情况下,这个方法还是一个不错的方案。使用这种方法的步骤如下:1,使用控件创建web表单(form)2,创建可以返回表单的按钮和链接转载 2013-11-27 10:32:22 · 745 阅读 · 0 评论 -
.net中窗体之间的数据交换总结
Windows 窗体是用于 Microsoft Windows 应用程序开发的、基于 .NET Framework 的新平台。此框架提供一个有条理的、面向对象的、可扩展的类集,它使您得以开发丰富的 Windows 应用程序。一个Windows窗体就代表了.NET架构里的System.Windows.Forms.Form类的一个实例。作者在CSDN技术论坛.NET板块下的C#分类经常转载 2013-11-27 10:35:25 · 855 阅读 · 0 评论 -
const 与 readonly知多少
尽管你写了很多年的C#的代码,但是可能当别人问到你const与readonly的区别时候,还是会小小的愣一会吧~ 笔者也是在看欧立奇版的《.Net 程序员面试宝典》的时候,才发现自己长久以来竟然在弄不清出两者的情况下,混用了这么长的时间。的确,const与readonly 很像,都是将变量声明为只读,且在变量初始化后就不可改写。那么,const与readonly 这两个修饰符转载 2013-11-27 10:41:00 · 483 阅读 · 0 评论 -
浅谈Overload和Override的区别
如果在子类中定义某方法与其父类有相同的名称和参数,我们说该方法被重写 (Overriding)。如果在一个类中定义了多个同名的方法,它们或有不同的参数个数或有不同的参数类型,则称为方法的重载(Overloading)。本文介绍的是Overload和Override的区别。Overload是重载的意思,Override是覆盖的意思,也就是重写。重载Overload表示同一个类转载 2013-11-27 11:09:41 · 912 阅读 · 0 评论 -
结构和类的区别
类:类是引用类型在堆上分配,类的实例进行赋值只是复制了引用,都指向同一段实际对象分配的内存类有构造和析构函数类可以继承和被继承结构:结构是值类型在栈上分配(虽然栈的访问速度比较堆要快,但栈的资源有限放),结构的赋值将分配产生一个新的对象。结构没有构造函数,但可以添加。结构没有析构函数结构不可以继承自另一个结构或被继承,但和类一样可以继转载 2013-11-27 11:12:49 · 506 阅读 · 0 评论 -
面试题
什么是委托和事件,怎么定义事件虚函数和抽象函数的区别接口和抽象函数的区别写一下冒泡排序BackgroundWorker和Thread的用法进程间是怎么通信的?,线程间又是怎么通信的?Romoting和WebService的作用请解释一下什么是封装、继承和多态C#委托是什么原创 2015-03-20 21:08:43 · 443 阅读 · 0 评论