自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

likefrank的专栏

好好学习,天天向上

  • 博客(40)
  • 资源 (1)
  • 收藏
  • 关注

原创 《C#与.NET3.0高级程序设计》摘要-----第三章 C#语言基础

第三章 C#语言基础3.1、剖析一个简单的C#程序1.简单示例    C#要求所有的程序逻辑都包含在一个类型定义中。    using System;    class HelloClass    {        public static int Main(string[] args)        {            Co

2010-03-02 16:08:00 1777

原创 《C#与.NET3.0高级程序设计》摘要----第二章 构建C#应用程序

第二章 构建C#应用程序一、CSC相关1.1、各个选项1、/out    本选项用于指定将被构建出的程序集名称。默认条件下,程序集的名字或与最初输入的*.cs文件名字相同(生成*.dll文件的情况下),或者与包含程序的Main()方法的那个类型的名字相同(生成*.exe文件的情况下)。2、/target:exe    本选项构建一个可执行的控制台程序。默认的输出类型

2010-03-02 14:55:00 641

原创 《C#与.NET3.0高级程序设计》摘要-----第一章 .NET之道

 第一章 .NET之道一、.NET框架的一些核心功能1、对已有具有完全的互操作性    已有的COM二进制组件可以和更新的.NET二进制组件共存,反之亦然。利用平台调用(PInvoke)服务可以在.NET的代码里调用基于C的库。2、完全的语言集成    支持跨语言继承、跨语言异常处理和跨语言的调试。 3、所有支持.NET的语言共用公共运行库引擎  

2010-03-02 14:53:00 619

原创 《C#与.NET3.0高级程序设计》摘要-----写在前面的话

以前写过这本书的读书笔记,基本是自己理解的总结,但是没有坚持下来,后来找到工作后又看了这本书的一部分,写了一些摘要性质的东西,较为忠实的记录作者的思路,是在google docs上写的,遗憾的是也没有完成,谴责下自己。 现在工作了,也比较忙,偶然从google docs里翻出曾经写的这些东西,觉得还是发出来比较好,并且还要继续写下去,每天坚持写一些。 谨以自勉。

2010-03-02 14:40:00 457

转载 C#编码规范ZZ

(摘录)C#编码规范 1 文件组织1.1 C#源文件把每个类都放在单独的文件中,文件名字和类名一致(用.CS作为扩展名)。类文件不要太长,不要超过2000LOC。必要时,分割代码,使结构更清晰。1.2 目录安排为每个命名空间创建一个目录(如,对于MyProject.TestSuite.TestTier使用MyProject/TestSuite/TestTier作

2009-03-12 14:29:00 672

转载 [转]用C++ 设计一个不能被继承的类

分析:这是Adobe 公司2007 年校园招聘的最新笔试题。这道题除了考察应聘者的C++ 基本功底外,还能考察反应能力,是一道很好的题目。在Java 中定义了关键字final ,被final 修饰的类不能被继承。但在C++ 中没有final 这个关键字,要实现这个要求还是需要花费一些精力。首先想到的是在C++中,子类的构造函数会自动调用父类的构造函数。同样,子类的析构函数也会自动调用父

2008-12-29 10:23:00 561

转载 各种排序方法的综合比较

各种排序方法的综合比较结论:   排序方法 平均时间 最坏时间 辅助存储   简单排序 O(n2)  O(n2)  O(1)   快速排序 O(nlogn) O(n2)         O(logn)   堆排序 O(nlogn) O(nlogn) O(1)   归并排序 O(nlogn) O(nlogn) O(n)   基数排序 O(d(n+rd)) O(d(n+rd)) O(rd)另外:直接插

2008-12-20 22:47:00 814

转载 虚继承之单继承的内存布局

C++2.0以后全面支持虚函数与虚继承,这两个特性的引入为C++增强了不少功能,也引入了不少烦恼。虚函数与虚继承有哪些特性,今天就不记录了,如果能搞了解一下编译器是如何实现虚函数和虚继承,它们在类的内存空间中又是如何布局的,却可以对C++的了解深入不少。这段时间花了一些时间了解这些玩意,搞得偶都,不过总算有些收获,嘿嘿。先看一段代码class A{      virtual aa(){};

2008-11-06 18:57:00 500

转载 浅谈C中的malloc和free

浅谈C中的malloc和free在C语言的学习中,对内存管理这部分的知识掌握尤其重要!之前对C中的malloc()和free()两个函数的了解甚少,只知道大概该怎么用——就是malloc然后free就一切OK了。当然现在对这两个函数的体会也不见得多,不过对于本文章第三部分的内容倒是有了转折性的认识,所以写下这篇文章作为一个对知识的总结。这篇文章之所以命名中有个“浅谈”的字眼,也就是这个意思了!

2008-11-06 16:39:00 564

转载 认识 C++ 中的 explicit 关键字

认识 C++ 中的 explicit 关键字(Danny Kalev发表于2004-12-28 11:01:04)带单一参数的构造函数在缺省情况下隐含一个转换操作符,请看下面的代码:class C {int i;//...public:      C(int i);//constructor and implicit conversion operator//as well};void f

2008-11-06 09:13:00 527

转载 定点数二进制表示

  闲扯原码、反码、补码   相信大家看到这个标题都不屑一顾,因为在任何一本计算机基础知识书的第一章都有他们的解释,但是在书上我们只能找到一些简单的定义,没次看过之后不久就忘了。最近论坛里有人问起这些概念,看到很多人的回复是以前看过现在忘了去看看某某书之类,很少有给出一个合理的解释。于是本人就开始思考(虽然上帝会发笑,我还是要思考。),于是得出了以下的结论。     数值在计算机中

2008-11-05 19:47:00 6547 1

原创 操作系统复习四(存储器管理)

基本内容 1:基本概念 1.1 :程序的装入与重定位绝对装入方式可重定位装入方式与静态重定位(逻辑地址的概念),是在装入时由重定位装入程序一次性完成的,不允许模块在内存中移动。动态运行时装入方式与动态重定位:重定位是在程序真正执行时进行。需要重定位寄存器的支持。 1.2:程序的链接静态链接方式:程序运行前,将各目标模块及它们所需要的库函数,链接成一个完成的装

2008-11-05 15:38:00 1453

转载 整除规则

 数的整除的特征 (1)1与0的特性: 1是任何整数的约数,即对于任何整数a,总有1|a. 0是任何非零整数的倍数,a≠0,a为整数,则a|0. (2)若一个整数的末位是0、2、4、6或8,则这个数能被2整除。 (3)若一个整数的数字和能被3整除,则这个整数能被3整除。 (4) 若一个整数的末尾两位数能被4整除,则这个数能被4整除。 (5)若一个整数的末位是0或

2008-11-03 09:44:00 1747

转载 big_endian和little_endian的说明

big_endian 、little_endian 用于自动改变二进制位存放顺序 Big Endian and Little Endian    谈到字节序的问题,必然牵涉到两大CPU派系。那就是Motorola的PowerPC系列CPU和Intel的x86系列CPU。PowerPC系列采用big endian方式存储数据,而x86系列则采用little endian方式存储数

2008-10-24 15:30:00 515

转载 互质数

   小学数学教材对互质数是这样定义的:公约数只有1的两个自然数,叫做互质数。   这里所说的“两个数”是指除0外的所有自然数。   “公约数只有 1”,不能误说成“没有公约数。”   例:   (1)两个不相同质数一定是互质数。   例如,2与7、13与19。   (2)一个质数如果不能整除另一个合数,这两个数为互质数。   例如,3与10、5与 26。   (3

2008-10-23 16:29:00 1094

转载 RAID0、RAID1、RAID0+1、RAID5原理介绍

RAID是通过磁盘阵列与数据条块化方法相结合, 以提高数据可用率的一种结构。IBM早于1970年就开始研究此项技术 。RAID 可分为RAID级别1到RAID级别6,通常称为: RAID 0, RAID 1, RAID 2, RAID 3,RAID 4,RAID5,RAID6。每一个RAID级别都有自己的强项和弱项. “奇偶校验”定义为用户数据的冗余信息, 当硬盘失效时, 可以重新产生

2008-10-23 13:23:00 552

原创 斐波那契数列

【该数列有很多奇妙的属性】    比如:随着数列项数的增加,前一项与后一项之比越逼近黄金分割0.6180339887……   还有一项性质,从第二项开始,每个奇数项的平方都比前后两项之积少(请自己验证后自己确定)1,每个偶数项的平方都比前后两项之积多(请自己验证后自己确定)1。  如果你看到有这样一个题目:某人把一个8*8的方格切成四块,拼成一个5*13的长方形,故作惊讶地问你:为什么64

2008-10-23 13:02:00 951

转载 平方数

数学上,平方数,或称完全平方数,是指可以写成某个整数的平方的数,即其平方根为整数的数。例如,9 = 3 × 3,它是一个平方数。·从1开始的n个奇数的和是一个完全平方数,n2——即  1+ 3+ 5+ 7+…+( 2n-1)=n2,例如     1+ 3+ 5+ 7+ 9= 25=52。·每一个完全平方数的末位数是0,1,4,5,6,或9。·每一个完全平方数要末能被3整除,要末减去1能被3整除。·

2008-10-23 11:04:00 1876

转载 C++ 虚函数表解析

C++ 虚函数表解析 陈皓http://blog.csdn.net/haoel  前言 C++中的虚函数的作用主要是实现了多态的机制。关于多态,简而言之就是用父类型别的指针指向其子类的实例,然后通过父类的指针调用实际子类的成员函数。这种技术可以让父类的指针有“多种形态”,这是一种泛型技术。所谓泛型技术,说白了就是试图使用不变的代码来实现可变的算法。比如:模板

2008-10-21 12:20:00 431

原创 操作系统总结三(处理机调度)

 基本内容 1:基本概念高级调度:作业调度或长程调度。低级调度:进程调度或短程调度。非抢占式,抢占式。终极调度:中程调度。解决内存紧张。 2:调度算法先来先服务FCFS:作业调度或进程调度。非抢占式。很少作为进程调度主算法。    优点:简单,易于实现。    缺点:不利于短作业和I/O型作业。 短作业优先SJF/SPF:抢占或非抢占。进程调度。

2008-10-18 22:49:00 2656 1

原创 操作系统总结二(进程管理)

基本概念1:程序的顺序执行顺序性,封闭性,可再现性2:前趋图3:程序的并发执行间断性,失去封闭性,不可再现性4:进程的特征和定义结构特征。程序段,数据段,PCB动态性。由创建而产生,由调度而执行,由撤销而消亡。并发性:并发是引入进程的目的。独立性。独立运行,独立分配资源和独立接受调度异步性。5:进程的状态就绪,执行,阻塞,挂起6:进程控制块记录了os所需要的,用于描述进程的当前状态以及控制进程的全

2008-10-17 16:37:00 1385

转载 将字符串里词顺序倒置

将字符串里词顺序倒置,如"Times New Roman"变为"Roman New Times"。以空格为分隔符。解决方案为:先将整个字串倒置,然后依次把倒置后串中的每一个单词倒置。这个问题解答的思路很简单,但是要考虑到很多种的情况,比如字符串的头、尾有多余的空格怎么办,如果字符串中只有空格,还有字符串中间可能会有两个以上并列的空格。程序如下: 1 void ReverseStr(char *

2008-10-17 15:11:00 707

原创 单链表逆置,逆序输出

逆置伪代码void invert(SNode **Head){    assert(Head);    assert(*Head);        SNode *p,*q,*r;    p=*Head;    q=p->next;    while(q)    {        r=q->next;            q->next=p;                p=q;        

2008-10-17 10:34:00 668

转载 判断单链表是否存在环,判断两个链表是否相交问题详解

有一个单链表,其中可能有一个环,也就是某个节点的next指向的是链表中在它之前的节点,这样在链表的尾部形成一环。问题:1、如何判断一个链表是不是这类链表?2、如果链表为存在环,如果找到环的入口点?解答:一、判断链表是否存在环,办法为:设置两个指针(fast, slow),初始值都指向头,slow每次前进一步,fast每次前进二步,如果链表存在环,则fast必定先进入环,而slow后进入环,两个指针

2008-10-17 10:25:00 875 1

原创 操作系统总结一(操作系统引论)

 第一章:操作系统引论 一:操作系统目标和作用目标:方便性,有效性,可扩充性,开放性作用:从一般用户,资源管理,虚拟机,任务组织的观点分别看 二:操作系统发展1:人工操作系统2:脱机I/O3:单道批处理系统(自动型,顺序性,单道性)4:多道批处理系统(多道性,调度性,无序性)5:分时系统(多路性,独立性,及时性,交互性)6:实时系统 三:OS

2008-10-11 12:54:00 569

转载 对内联函数与普通函数的一些比较与分析

本文出处:http://blog.csdn.net/closeall2008声明: 本文可以不经作者同意, 任意复制, 转载, 但任何对本文的引用都请保留文章的作者, 出处以及声明信息. 谢谢.        我们知道c++通过内联函数对c语言进行了扩充,从而在某种程度上对程序的运行效率进行改进。然而普通函数与内联函数的区别不在于它们的编写方式上,而在于c++编译器对它们的理解、解释。

2008-10-08 16:47:00 606

转载 自动变量、静态变量的持续性、区域性、和链接性

 作者:closeall     这里我想写一下变量的持续性、区域性、和链接性。先简单的介绍一下这三个属性是什么意思。所谓持续性就是说这个变量所持续的时间,即它在内存中存在的时间。区域性简单的说就是变量的作用域,就是说这个变量在哪个范围内有效的。链接性是说,这个变量是不是允许外部文件使用。先说自动变量。什么是自动变量呢 ?自动变量就是指在函数内部定义使用的变量。他只是允许在定义他的

2008-10-08 16:35:00 887

转载 论calloc和malloc的区别

函数malloc()和calloc()都可以用来动态分配内存空间,但两者稍有区别。malloc()函数有一个参数,即要分配的内存空间的大小:void*malloc(size_tsize);calloc()函数有两个参数,分别为元素的数目和每个元素的大小,这两个参数的乘积就是要分配的内存空间的大小。void*calloc(size_tnumElements,size_tsizeOfE

2008-10-08 16:10:00 904

转载 详解link

详解link有些人写C/C++(以下假定为C++)程序,对unresolved external link或者duplicatedexternalsimbol的错误信息不知所措(因为这样的错误信息不能定位到某一行)。或者对语言的一些部分不知道为什么要(或者不要)这样那样设计。了解本文之后,或许会有一些答案。    首先看看我们是如何写一个程序的。如果你在使用某种IDE(Visual S

2008-10-05 14:43:00 699

转载 字符串逆序输出

#include   #include   int main() {    char  *s,*p,*q;    int  x,t;   s=new  char[20];   cin>> s;   cout   x=strlen(s);   p=s+x-1;  q=s;   for(int i=0;i   {   t=*q;     

2008-09-25 13:00:00 440

转载 strcpy ,strncpy ,strlcpy地用法

 strcpy ,strncpy ,strlcpy地用法好多人已经知道利用strncpy替代strcpy来防止缓冲区越界。但是如果还要考虑运行效率的话,也许strlcpy是一个更好的方式。1. strcpy我们知道,strcpy 是依据 /0 作为结束判断的,如果 to 的空间不够,则会引起 buffer overflow。strcpy 常规的实现代码如下(来自 OpenBSD 3.9):

2008-09-24 21:36:00 627

转载 经典题目:strcpy函数

  题目:已知strcpy函数的原型是:char * strcpy(char * strDest,const char * strSrc);1.不调用库函数,实现strcpy函数。2.解释为什么要返回char *。解说:1.strcpy的实现代码char * strcpy(char * strDest,const char * strSrc){if ((strDest==NULL)||(s

2008-09-24 21:30:00 541

转载 不用库函数,自己实现strcpy和memcpy函数;二者的区别

 1.代码实现char* strcpy(char* strDest, const char* strSrc){ ASSERT(strDest != NULL && strSrc != NULL); char* strTmpD = strDest; while ((*strTmpD++ = *strSrc++) != 0) { } return strDest ;}void* mem

2008-09-24 21:29:00 1090

转载 各种排序算法的总结和比较

1 快速排序(QuickSort)快速排序是一个就地排序,分而治之,大规模递归的算法。从本质上来说,它是归并排序的就地版本。快速排序可以由下面四步组成。(1) 如果不多于1个数据,直接返回。(2) 一般选择序列最左边的值作为支点数据。(3) 将序列分成2部分,一部分都大于支点数据,另外一部分都小于支点数据。(4) 对两边利用递归排序数列。快速排序比大部分排序算法都要快。尽管我们可以在某些特殊的情况

2008-09-24 21:13:00 31281 2

转载 宏和内联函数的区别

先说宏和函数的区别:1. 宏做的是简单的字符串替换(注意是字符串的替换,不是其他类型参数的替换),而函数的参数的传递,参数是有数据类型的,可以是各种各样的类型.2. 宏的参数替换是不经计算而直接处理的,而函数调用是将实参的值传递给形参,既然说是值,自然是计算得来的.3. 宏在编译之前进行,即先用宏体替换宏名,然后再编译的,而函数显然是编译之后,在执行时,才调用的.因此,宏占用的是编译的时间,而函数

2008-09-16 21:27:00 1035

转载 内联函数与普通函数的区别是什么

 问题: 内联函数与普通函数的区别是什么?     回答:     内联函数是代码被插入到调用者代码处的函数。如同 #define 宏,内联函数通过避免被调用的开销来提高执行效率,尤其是它能够通过调用(“过程化集成”)被编译器优化。     内联函数和宏很类似,而区别在于,宏是由预处理器对宏进行替代,而内联函数是通过编译器控制来实现的。而且内联函数是真正的函数,只是在需要用到的时候,内联函数像

2008-09-16 21:25:00 620

原创 VS2005项目模板和项模板丢失的问题

装了devexpress后,发现以前的项目打开后,要新添加项的时候,总是只显示devexpress有的那几个模板,以前的模板都丢失了。经过一番搜索,找到了解决办法。项目模板丢失现象:新建项目时以前的模板找不到了。项目模板丢失解决办法:找到 C:/Program Files/Microsoft Visual Studio 8/Common7/IDE/ProjectTemplates目录(

2008-06-19 16:39:00 2838

原创 《C#与.NET3.0高级程序设计》读书笔记(三)

第五章(对象的生命周期)一:类、对象和引用    类是描述类型的实例在内存中什么样子的,对象是在托管堆中创建的类的实例,new返回的指向对象的引用,这个引用是存放在栈里的。二:对象生命周期的基础    1:法则:使用new关键字将一个对象分配在托管堆上,然后就不用再管。当一个对象从代码库的任何部分都不可达是,垃圾回收器会删除它。但不一定是在函数返回后立即回收。    2:CIL的new指令   

2008-05-08 20:48:00 790

原创 《C#与.NET3.0高级程序设计》读书笔记(二)

C#笔记第四章“C#2.0面向对象编程”一:C#类类型    1、如果要用过new someClass()来创建新对象,必须重定义默认构造函数    2、仅仅返回类型不同不能重载    3、this关键字可以用来转发构造函数调用二、oop三大支柱:封装,继承,多态。继承有is-a和has-a的关系,多态靠虚拟和抽象来支持。三:C#封装支持。    1:传统访问方法和修改方法    2:类属性,其中

2008-05-07 15:04:00 773

原创 《C#与.NET3.0高级程序设计》读书笔记(一)

第三章:一:main带的参数可以直接访问args数组,也可以通过Environment类的静态函数GetCommandLineArgs获得。Environment类还包含其他有关应用程序和操作系统的有关信息。二:类必须在new之后才能用,c#不会将类类型分配到栈上三:之用定义构造函数,无需定义析构函数,因为c#有垃圾自动收集机制四:有关“分工:(separation of concerns)。类应

2008-05-07 11:28:00 757

.net安全性与密码术

《.net安全性与密码术》的附书源代码,有各种加解密,签名的源代码。是VS2003的代码,不过在VS2005下编译运行完全没有问题。

2008-03-24

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除