小女也爱C#(4)---由C语言引入C#
有网友说小女是标题党”明明是C语言还说是C#,太雷人了”.马老师说计算机语言是一种工具,都是为程序服务的工具,每种工具都是相通的.C#是一门语言优美的语言,C#是C语言和Java的综合体.要理解C#就要从C语言开始理解,要不你就不知道什么是面向对象,要不你就不没必要用C#,因为C#平台是由C/C++开发的.C#语言训练的是写C#编译器的人,而C语言练的是写程序的人.所以把人练好,再用好的工具就是如虎添翼,反之如果先用好的工具再练人则是:纸老虎. C#平台是由C/C++开发的,那么请站在开发c#作者的角度来理解C#,下面是一段C#文件类,请用C语言模仿
public class FileClass
{
int fileleng;
Public FileLen
{
Get
{
Return fileleng;
}
}
public string DelFile(string filename)
{
}
public string[] GetFiles(string path)
{
}
public string ReadFile(string filename)
{
}
}
C语言表达如下:
struct FileClass
{
int fileleng;
char *PDelFile;
char *PGetFiles;
char *PReadFile;
};
char* DelFile()
{
; ;
}
char* GetFiles()
{
;
}
char* ReadFile()
{
;
}
struct FileClass newFileClass()
{
struct FileClass Fc;
Fc.PDelFile= DelFile;
Fc.PGetFiles= GetFiles;
Fc.PReadFile = ReadFile;
return Fc;
}
如上就是用C语言来表达一个类,下面看看调用的情况
C#调用如下:
FileClass Fc=new FileClass();
Fc. DelFile();
Fc. FileLen;
下面是C的调用方法以:
int main(int argc, char* argv[])
{
int i;
struct FileClass Fc;
Fc=newFileClass();//new 一个类
i=Fc.fileleng;//调用类的属性
((char (*)())Fc.PDelFile)();//调用类的方法
return 0;
}
小女总结如下:
语言是工具,想要用好工具请把技能练好.
下一编文章小女将用C来实现接口,继承.请个位网友先自己实现一下