最近的文章列表

char类型和string类型(C++,C#)
这一篇要讲一个非常重要的话题:char类型与string类型的区别。从字面上说,他们是有区别的1. char是字符类型2. string是字符串类型 虽然一字之差,但其本质是很大的。1. char属于基础类型(C++),在C#中它属于值类型(Value Type)。char类型的长度是固定的,上一篇讲到,在C++中它可能是1个字节,或者2个字节(取决于是否为Unicode Char),而在C#中,它永远是2个字节。2. string是一个模板类型,也就是一个class(C++)。在C#中它属于引用类型(Reference Type)。string的长度是无法明确取得的。也就是无法通过sizeof来取得,因为它不是一个基础类型,它本身并不固定长度,而取决于内部包含的字符。 说完了本质区别,我们
2011/3/25 Comments:
如何使用MarshalAs Unmanaged
UnmanagedType 枚举此 API 支持 .NET Framework 基础结构,不适合在代码中直接使用。指定如何将参数或字段封送到非托管代码。命名空间: System.Runtime.InteropServices程序集: mscorlib(在 mscorlib.dll 中)[ComVisibleAttribute(true)]public enum UnmanagedType成员名称说明Bool4 字节布尔值(true != 0、false = 0)。这是 Win32 BOOL 类型。I1 bool(true = 1、false = 0)。U11 字节无符号整数。I22 字节带符号整数。U22 字节无符号整数。I44 字节有符号整数。U44 字节无符号整数。I88 字节有符号
2011/3/25 Comments:
调试时出现若要调试此模块,请将其项目生成配置更改为“调试”模式
VS 2005调试时出现如下信息:Microsoft Visual Studio生成下面的模块时,启用了优化或没有调试信息:C:\WINNT\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\root\0c2fc589\assembly\dl3\84a9ca8e\00e896d_956fc801\PriseLib.DLL若要调试此模块,请将其项目生成配置更改为调试模式。若要取消显示此消息,请禁用"启动时若没有用户代码则发出警告"调试器选项。解决法:第一步:把C:\WINNT\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\root\ 这
2011/3/24 Comments:
PHP 网站如何解决网站大流量、高并发的问题?
首先,确认服务器硬件是否足够支持当前的流量。普通的P4服务器一般最多能支持每天10万独立IP,如果访问量比这个还要大,那么必须首先配置一台更高性能的专用服务器才能解决问题,否则怎么优化都不可能彻底解决性能问题。其次,优化数据库访问。前台实现完全的静态化当然最好,可以完全不用访问数据库,不过对于频繁更新的网站,静态化往往不能满足某些功能。缓存技术就是另一个解决方案,就是将动态数据存储到缓存文件中,动态网页直接调用这些文件,而不必再访问数据库,WordPress和Z-Blog都大量使用这种缓存技术。我自己也写过一个Z-Blog的计数器插件,也是基于这样的原理。如果确实无法避免对数据库的访问,那么可以尝试优化数据库的查询SQL.避免使用Select * from这样的语句,每次查询只返回自己需要的
2011/3/24 Comments:
[SOHU网]网站镜像站点解决方案
一般的话,只要弄个二级域名就行了,比如www.domainname.com解析到电信服务器,www1.domainname.com解析到教育网服务器,然后在各自的首页做一个选择。以下是搜狐企业的解决方案,学习原理--------------------------------------------------网站镜像站点解决方案 问题概述 许多公司希望自己的网站能够被全世界的浏览者快速访问,但由于世界各地互联网的发展是不均衡的,特别是网络基础设施的建设、与国际出口连接的带宽等存在很大的差别,这些差别将造成您的网站可能对世界各地互联网的使用者具有不同的性能。在不同的地区建立镜像站点,无疑是最好的解决方案。建立镜像站点,有多种选择,您可以在不同的地方使用不同的域名,但是不利于企业的形
2011/3/24 Comments:
转载:大型高并发高负载网站的系统架构【精】
大型网站,比如门户网站。在面对大量用户访问、高并发请求方面,基本的解决方案集中在这样几个环节:使用高性能的服务器、高性能的数据库、高效率的编程语言、还有高性能的Web容器。但是除了这几个方面,还没法根本解决大型网站面临的高负载和高并发问题。  上面提供的几个解决思路在一定程度上也意味着更大的投入,并且这样的解决思路具备瓶颈,没有很好的扩展性,下面我从低成本、高性能和高扩张性的角度来说说我的一些经验。1、HTML静态化   其实大家都知道,效率最高、消耗最小的就是纯静态化的html页面,所以我们尽可能使我们的网站上的页面采用静态页面来实现,这个最简单的方法其实也是最有效的方法。但是对于大量内容并且频繁更新的网站,我们无法全部手动去挨个实现,于是出现了我们常见的信息发布系统CMS,像我们常访问的
2011/3/24 Comments:
C#调用C/C++开发的dll方法
方法一:P/Invoke调用非托管代码的方法[DllImport("camnpr.dll")]static extern Int32 Jie(Int32 arg);方法二:LoadLibrary动态调用[DllImport("Kernel32")] publicstaticexternintGetProcAddress(inthandle,Stringfuncname); [DllImport("Kernel32")] publicstaticexternintLoadLibrary(Stringfuncname); [DllImport("Kernel32")] publicstaticexternintFre
2011/3/24 Comments:
C#关键字out和ref区别
ref和out都是C#中的关键字,所实现的功能也差不多,都是指定一个参数按照引用传递。对于编译后的程序而言,它们之间没有任何区别,也就是说它们只有语法区别。总结起来,他们有如下语法区别:1、ref传进去的参数必须在调用前初始化,out不必,即:int i;SomeMethod( ref i );//语法错误SomeMethod( out i );//通过2、ref传进去的参数在函数内部可以直接使用,而out不可:public void SomeMethod(ref int i){ int j=i;//通过 //...}public void SomeMethod(out int i){ int j=i;//语法错误}3、ref传进去的参数在函数内部可以不被修改,但out必须在离开
2011/3/24 Comments:
查看DLL函数的标识包_无法再Dll中找到名为的入口点
DLL 函数的标识包括以下元素: 函数的名称或序号 实现所在的 DLL 文件的名称 例如,如果指定 User32.dll 中的 MessageBox 函数,需要标识该函数 (MessageBox) 及其位置(User32.dll、User32 或 user32)。Microsoft Windows 应用程序编程接口 (Win32 API) 可以包含每个字符和字符串处理函数的两个版本:单字节字符 ANSI 版本和双字节字符 Unicode 版本。如果不进行指定,CharSet 字段所表示的字符集将默认为 ANSI。某些函数可以有两个以上的版本。 M
2011/3/24 Comments:
flv文件下载方法
近日在宿舍里看《奋斗》,得出了一点对付铁通这种超慢超垃圾网速的视频下载方法:平常下载视频,不是用迅雷就是用BT,资源多的时候下载速度还可以,资源少的时候会稍微有点郁闷。像我们宿舍用的是铁通的adsl,1M的带宽下载速度最多也就100k/s,遇到迅雷或者BT上资源少的时候那是相当滴郁闷啊。。。最近在56视频网上看奋斗,觉得速度还可以,于是便想到,把遨游浏览器最小化让视频在那缓冲着,自己先看着代码或者去干其他的都行,回头只要去IE临时文件夹里把flv文件拷出来就行了~后来又想,用迅雷或者快车直接把flv文件下载不是更快吗?我试了一下。浏览器我用的是遨游v2.0.4.5799版本,它的工具里有个网页嗅探器功能,可以直接获得flv文件的真实地址。比如我要看这个页面的视频:http://www.56.
2011/3/23 Comments: