当前位置: 首页 > news >正文

视频运营管理网站怎样做网站关键字

视频运营管理网站,怎样做网站关键字,免费国外云服务器,南通网站建设公司哪家好在C中, 数据和处理数据的操作是分开声明的, 语言本身并没有支持数据和函数之间的关联性. 这种称为procedural, 由一组算法函数所驱动, 他们处理的是共同的外部数据. 而C, 则在程序风格, 更在程序的思考上有明显的差异, 它以A…在C中, 数据和处理数据的操作是分开声明的, 语言本身并没有支持数据和函数之间的关联性. 这种称为procedural, 由一组算法函数所驱动, 他们处理的是共同的外部数据. 而C, 则在程序风格, 更在程序的思考上有明显的差异, 它以ADT或class hierarchy的数据封装建立数据和操作的关联性. 在软件工程的眼光来看更为合理. 但是程序员往往出于效率和简易性考虑而选择C.   那么使用C是否就一定意味着低效了... 其实C在布局以及存储时间上的额外负担主要是由virtual引起的, the virtual function mechanism in its support of an efficient run-time binding, and a virtual base class in its support of a single, shared instance of a base class occurring multiple times within an inheritance hierarchy. 一般而言, 并没有什么天生的理由说C一定比C庞大或迟缓.   对象模型 作为此书讨论的基础, 首先要来分析一下C的对象模型. 所谓对象模型, 就是在内存中怎么样来存储一个对象. 对于对象的存储, 下面有3种模型 简单对象模型 这个模型, 顾名思义, 就是为了尽量减低C编译器的设计复杂度而开发的, 当然简单带来的是空间和执行期的低效. 这个模型中, 对象就是一系列slots, slot中存放了指向members的指针, members按程序中的声明顺序排列. 对象中并不实际存放members, 只是存放member的指针, 这样的好处是member的类型不会影响对象的存储空间. 但是降低了访问效率,  和存储效率, 由于需要通过指针间接访问, 并要额外存储指针.   表格驱动对象模型 这个模型, 相对于简单模型, 更加抽象, 它会把data member和function member分别放在两个table中, The member function table 和简单模型一样存放的是函数指针. The data member table 直接存放的是data本身. 而对象本身只存放这两个table的指针, 这样最大的好处是, 对象大小是固定的, 无论members怎样改变.   C对象模型 C模型从简单对象模型派生而来, 并对内存空间和存取时间做了优化. 各个member的存储方法如下, Nonstatic data members are allocated directly within each class object. Static data members are stored outside the individual class object. Static and nonstatic function members are also hoisted outside the class object. Virtual functions are supported in two steps: A table of pointers to virtual functions is generated for each class (this is called the virtual table ). A single pointer to the associated virtual table is inserted within each class object (traditionally, this has been called the vptr ).The type_info object associated with each class in support of runtime type identification (RTTI) is also addressed within the virtual table, usually within the tables first slot. 如下图所示, 对于C对象模型, 对象内只会保存Nonstatic data members和vptr, 这个模型的优点是在于空间和存取时间的效率, 缺点是由于考虑存取效率把Nonstatic data members直接存放在对象中, 导致任何数据成员的改动都会影响类对象的大小. 此处表格驱动对象模型就提供了较大的弹性, 不过鱼和熊掌不能兼得. 在设计时, 就需要根据实际需要进行取舍, C更看重效率, 而CORBA这样的组件平台, 就会选择耦合度更低的表格驱动模型, 以利于当类成员改变后, 可以不需重新编译客户代码(因为对于这种模型, 对象大小是不变的). 继承的对象模型 前面讨论了基本的C对象模型, 如果加入了继承语言特性, 对象模型又要做什么样的改动 这个问题就是怎样在内存中存放父类, 派生类, 以及建立之间的关系. 简单的想法就是, 在对象中增加一个slot去存放父类对象指针, 有几个父类就增加几个slots 更透明的方法是, 专门生成一个base class table来存放所有父类指针, 并在对象中增加一个bptr来指向这个table. 这个方法的问题就是由于间接性导致的效率问题, 但优点就是对象对于继承的一致的表现方式, 可以任意修改父类, 而不会影响该类对象本身   前面说了C更看重效率, 所以它没有采用任何的间接方法, The data members of the base class subobject are directly stored within the derived class object. 缺点很明显,就是任意base class发生改变, 所有用到该类的派生类都需要重新编译. 关于C对于虚基类的处理会在后面章节讨论...转载于:https://www.cnblogs.com/fxjwind/archive/2011/07/05/2098638.html
http://www.yutouwan.com/news/167277/

相关文章:

  • app网站多少钱农村做网站开发
  • 建设银行车主卡网上交罚款网站澎湃动力网站建设公司
  • 网站建设好评公司全国建设项目竣工验收公示网站
  • 八宿县网站seo优化排名下载软件应用
  • 太原市住房和城乡建设局的网站首页中国互联网协会调解中心
  • 建设网站需要准备哪些内容百度风云榜游戏
  • 做ic芯片的要去哪个网站做网站用需要几个软件
  • 哪里有做空包网站的峰峰网站建设
  • 大型网站建设托管服务建设公司哪家好
  • 网站建设要域名和什么网站策划书预期风险
  • 网站开发的平台网站建设费的会计分录
  • 东莞网站建设(信科分公司)wordpress主题首页显示不全
  • 网站建设法律可行性网页链接中的文件路径分为
  • 在小说网站做责编创建wordpress主题
  • sqlite3做网站数据库东莞网站建设团队全网天下
  • 网页新建站点食品电子商务网站建设规划书
  • 江苏连云港网站设计公司cordova wordpress
  • 功能型类的网站品牌建设ppt
  • 大连响应式网站建设网站建设先进
  • 湖北省建设工程信息网seo薪资
  • html5 网站 优势怎么做网页设计原型
  • 网站链接建设及引流营销简单网页制作视频教程
  • 公司注册网上核名网站华美天一建筑公司网站
  • 企业网站建设哪家快石家庄造价信息网
  • 定制网站成本多少做一个国外网站
  • 网站排行首页怎么做做优化需要发多少个网站
  • php网站开发课程阿里云网站怎么建设
  • 外国网站打开很慢网站宣传的方式
  • 建筑网格化国内seo排名分析主要针对百度
  • 专业做网站的软件食品品牌推广方案