作文开头优美句子写景
发布时间:2019-08-11 19:22:12
作者:xhs
阅读:714
作文开头优美句子写景:(面向对象语言更接近人们的思维方式,在很大程度上降低了代码的复杂度,提高了代码的可读性和可维护性的同时,传统的C代码也可以设计成更可读、易于维护、低复杂度的BEUT语言。代码,本文将通过一个实际的例子来说明这一点。\n基本的身体结构知识\n除了提供基本的数据类型外,C还为用户提供自定义数据类型的能力,即结构。在C中,可以使用结构来表示任何实体。结构是面向对象语言中类概念的开始,例如:\ntydef struct \nfloat x;\nfloat y;\n point;\n\n定义平面坐标系中的一个点,其中有两个域,即x坐标和y坐标。\n结构中的域称为结构。结构中的数据类型可以是简单的数据类型,也可以是其他结构,甚至可以嵌套结构本身。例如,一个标准的链表结构可以定义如下:typedef struct node \nvoid*data;\n//data pointer \n \nint data length;\n//data length \n \nstruct node*next;\n//指向下一个节点\n \n该节点;\n \n可以看到,节点中的下一个指针又是node类型。\n a f函数指针\n指针是C的灵魂,C比其他语言更灵活、更强大。因此,学习C语言必须掌握好指针。函数指针,即指向函数在内存中映射的第一个地址的指针,通过函数指针,可以将函数作为参数传递给另一个函数,并在适当的时候调用,从而实现异步通信等函数。\n例如unix/linux系统中的信号注册函数的建模如下:\n void(*signal(int signo,void(*func)(int))(int)\n\n使用时,需要在外部定义信号处理程序函数(signal handler),然后使用signal(signo,handler)在进程上注册处理程序。当信号发生时,进程可以调用信号处理程序函数。\n将函数指针作为前面提到的结构的成员,结构的成员可以是简单的数据结构、其他结构,当然还有指针。当函数指针用作结构的成员,而这些函数仅用于操作结构中的数据时,可以形成一个单独的实体,该实体同时具有数据和数据操作,因此自然会产生类的概念。\n面向对象语言的特性\n一般来说,继承、封装和多态性被认为是面向对象语言必须支持的三个特性,正是通过这三个特性,面向对象优于面向过程。由于语言开发者的宣传等原因,表面上的面向对象的思想可以通过语言作为载体来实现,但实际上,面向对象是一种与具体实现完全无关的软件设计思想。o否认这些所谓的纯面向对象的语言在代码的可读性以及与自然人类思维的匹配程度上比面向过程的语言要好得多。\n一般来说,在语言级别上,对象的定向我们需要描述一个对象,我们需要记住这个对象的一些属性。例如,盒子是一个实体,有六个边、颜色、重量,不管它是空的还是空的,它可以把东西放进去,把东西拿出来。在面向对象的语言中,将这样的对象抽象到类中是很常见的:class box \ncollr color;\nint weight;\nboolean empty;\n\n若要放入(something);\n使用get();\n \n\n若要操作该框,可以执行以下操作:\nbox。放置(蛋糕);\n盒子。get();\n//从框中取出一些内容。\n\n在面向进程的语言中,实体通常传递给在整个世界中运行的函数。以box为例,box的操作通常是这样的:\n put(box,cake);\n//在box中放置一个蛋糕\n \nget(box);\n//从box中取出一些东西\n \n通常,代码的第一种形式更为常见,因此大多数面向对象的语言都提供了这种级别的详细支持,使得E代码可读性和可理解性更高。C语言,作为一种灵活简单的语言,我们完全可以通过C提供一种简单的机制来实现这样一种更优雅的代码形式。\n C语言的对象定向\n如前所述,对象定向是一种独立于语言的软件设计思想。在本节中,我使用一个列表作为如何用C语言设计面向对象代码的示例。定义接口是面向对象语言中更重要的概念之一。接口只是关于外部致力于实现接口的实体可以完成什么,但不公开实现接口的方式。其优点是,实现人员可以在不接触接口使用者代码的情况下调整实现。\n让我们看看链接列表的接口定义:列表1。链表接口定义*head;\n int size;\n void insert(*)(void*node);\n//函数指针\n\n drop void(*)(void*node);\nvoid(*)清除();\nint*getsize();\nvoid*(*)get(int index);\nvoid print(*);\n列表;\n\nvoid insert(void*node);\nvoid drop(void*node);\n void the clear();\nint getsize();\nvoid*get(int index);\n void the print();\n\n endif ilist _h/**/\n\n如果是列表接口,您可以清楚地看到对于L“、'4B8237C83365E696'、'jeknipdmnatbxipn8rhz0jtje3gcoanw',5'、'insert、drop、clear、getsize、get(index)、print等。\n接口执行列表2。构造函数\node*node=null;\n list*list=null;\n\n void insert(void*node);\nvoid drop(void*node);\n void the clear();\n int getsize();\n void the print();\nvoid*get(int index);\n\nlist*listconstruction();\nlist=(list*)malloc(sizeof(list));\n节点=(*)malloc(sizeof(node));\n list->head=node;\nlist->insert=insert;\n//在list实体上注册insert函数实现\n\nlist->drop=drop;\nlist->clear=clear;\nlist->size=0;\nlist->getsize=getsize;\nlist->get=get;\nlist->print=print;\n列表->_this=list;\n//使用_this指针保存列表本身\n \n \n返回列表(list*);\n \n \n注意这里的_this指针,它通过确保列表上的外部操作映射到_this上的操作来简化代码。\n列表3。插入和删除\n//在列表对象中插入节点\n \n void insert(void*node)\nnode*current=(*)malloc(sizeof(node));\n \n current->data=node;\n current->next=list->\u this->head->next;\n列表->head->next=current;\n\n \n \n \n//删除指定的节点节点\n \n void drop(void*node)\nnode*t=list->\u this->head;\nnode*d=null;\nint i=0;\n对于(i;i\u this->the size;i++)\nd=list->\u this->head->next;\nif(d->data==((*)node->data)\the list->u this->head->next=d->next;\n free(d);\n(列表->_this->size)-;\n break;\n else \n列表->_this->head=list->_this->head->next;\n \n \n列表->_this->head=t;\n \n其他实现代码可以在下载部分找到,但对l来说没有意义。就在这里。\n测试\n测试代码\n好吧,我们到目前为止所做的所有工作都是确保公开的API尽可能干净和优雅。现在是测试的时候了:列表4。测试代码\n int main(int argc,char**argv)\n list*list=(list*)listconstruction();\n创建一个新的链接列表\n\n\n//插入一些值进行测试\n\n list->insert(“apple”);\n list->insert(“borland”);\n list->insert(“cisco”);\n list->insert(“dell”);\ne list->insert(“electrolux”);\n list->insert(“firefox”);\n list->insert(“google”);\n\n list->print();\n//打印整个列表\n\n\nprintf(“list size=%d\\n”,list->getsize());\n\n节点节点;\n node。data=“Electrolux”;\n否。next=null;\n list->drop(&node);\n//删除节点\n \n \n节点。data=“cisco”;\n否。next=null;\n list->drop(&node);\n//删除另一个节点\n \n \n list->print();\n//再次打印\n \nprintf(“list size=%d\\n”,list->getsize());\n list->clear();\n//清除列表\n \n \n返回0;\n \n \n配置1。运行结果\n \n \n \n \n \n \n结论\n产生C语言的Unix平台提倡设计理念,使设计尽可能简单,允许用户将这些简单的工具(如构建块)连接到功能强大、完整的应用程序中。应该说,C语言更好地继承了这一点,C语言非常简洁,非常强大,而且由于C语言的早期诞生,面向对象的思想在当时还不成熟,出现了大量C应用的过程类型,从而给人们一种C语言是一种错觉,面向过程的语言实际上C只是提供了一些简单、强大和通用的能力,至于你想把它分成块的东西都是你自己的。,‘4B8237C83365E696’,‘jeknipdmnatbxipn8rhz0jtje3gcoanw’,5)作文开头优美句子写景
版权声明:本文内容由互联网用户投稿整理编辑发布,不拥有所有权,不承担应有相关法律责任。如果文章、图片有涉嫌抄袭的内容,请发送到邮箱举报,且提供抄袭的相关证据,一但查实,会在24小时删除涉嫌侵权内容。
猜您喜欢

想知道女生是不是喜欢你,教用一个问题测试她喜欢你的方法:你可以对她说一句话:你好像长胖了一点?(看看女生是什么反应。不过如果男生问出这个问题,可能让女生觉得你情商低,就算女生喜欢你也有一定的风险性)
2024-02-20

如果男生犯了错惹女朋友生气,那就一定要想办法哄好她,因为是你错了呀。而想要哄好生气的女朋友,那你一定要认识到自己的错误,下面给大家分享惹女朋友生气检讨书1000字,希望能够帮助你哄好你的女朋友。
2024-02-19

如果女朋友说分手后做朋友是什么意思呢?如果是还爱着对方那就不应该选择分手,如果是不爱了那大家就应该彻底断了联系,真正深爱过的人是不可能在分手后做朋友的。下面就来分析女朋友的心理。
2024-02-18
脱单神器

安卓版蜜小助APP
iOS版蜜小助APP
20W+可复制撩妹话术
实战案例+话术+视频+教程
热门文章

口述:公公在梳妆台上给我数次高潮
2013-11-11
1069065

二宮琴美、東熱出操翻白眼昏死
2015-03-14
78328

那个午夜 禽兽继父将我压在身下
2014-04-08
78054

韩国美女主播”钟淑”高清视频精品合集9部 115网盘在线观看
2015-03-11
77288

店长推荐作品 EMP-001 EMPIRE Vol.1 50 波多野结衣 50连发泼溅中 2012年
2015-03-19
75774

留守女人和禽兽公公的不伦性事
2013-12-28
74937

美国男人让我一夜高潮五次
2014-04-29
69845

关牧村与前夫王星军离婚真正原因 关牧村前夫王星军照片家庭背景及个人资料
2014-08-15
64941

公公的精湛床技让我死去活来
2014-04-08
56763

我和小姨子在车上疯狂嘿咻
2013-12-28
56566