当前位置:首页 » 软件开发
开发技术指南» 文章正文
    引言: 联合(union)在C/C++里面见得并不多,但是在一些对内存要求特别严格的地方,联合又是频繁出现,那么究竟什么是联合、怎么去用、有什么需要注意的地方呢?就这些问题,我试着做一些简单的回答,里面肯定还有不当的地方,欢迎指出! 1、什么是联合? “联合”是一种特殊的类,也是一种构造类型的数据...
 

 

 ·闲言碎语话编程    »显示摘要«
    摘要: 有人说:编程高手==游戏高手。如果这是真的话,我早就成高手了,因为在游戏里,我早已成为宇宙总管、富甲天下、仗剑走天涯了。可是我还是一个菜鸟:)闲来无事,随便贴点文章。 程序员不应依赖开发工具,程序员更应该拥有的是一种思维、一种精神、一种观念。就像richard.m.stallman一样,有自己的精神,为自由软件而奋斗。就像求伯君,为民族软件的振兴而奋斗。这才是真正的程序员。 应该说,他们更注重......
 ·c++的历史纪实    »显示摘要«
    摘要: 语言的发展是一个逐步地进的过程,c++是直接从c语言发展过来的,而c语言是从b语言发展过来的,b语言是bcpl的一个解释性后代,bcpl是basic cpl。其中最有趣的是cpl中c的由来,由于当时这个语言是剑桥大学和伦敦大学合作开发的,在伦敦的人员加入之前,c表示剑桥,伦敦人员加入之后,c表示combined组合。还有一种非正式的说法,c表示christopher,因为christopher......


Union的迷思

     联合(union)在c/c++里面见得并不多,但是在一些对内存要求特别严格的地方,联合又是频繁出现,那么究竟什么是联合.怎么去用.有什么需要注意的地方呢?就这些问题,我试着做一些简单的回答,里面肯定还有不当的地方,欢迎指出!

   “联合”是一种特殊的类,也是一种构造类型的数据结构. 在一个“联合”内可以定义多种不同的数据类型, 一个被说明为该“联合”类型的变量中,允许装入该“联合”所定义的任何一种数据,这些数据共享同一段内存,已达到节省空间的目的(还有一个节省空间的类型:位域). 这是一个非常特殊的地方,也是联合的特征.另外,同struct一样,联合默认访问权限也是公有的,并且,也具有成员函数. 【程序编程相关:临时对象研究手记

1.什么是联合? 【推荐阅读:C++语言概念域检查

   “联合”与“结构”有一些相似之处.但两者有本质上的不同.在结构中各成员有各自的内存空间, 一个结构变量的总长度是各成员长度之与(空结构除外,同时不考虑边界调整).而在“联合”中,各成员共享一段内存空间, 一个联合变量的长度等于各成员中最长的长度.应该说明的是, 这里所谓的共享不是指把多个成员同时装入一个联合变量内, 而是指该联合变量可被赋予任一成员值,但每次只能赋一种值, 赋入新值则冲去旧值. 【扩展信息:让计算机开口说话

2.联合与结构的区别?

3.如何定义?

   例如:

    union test

    {

      test() { }

      int office;

      char teacher[5];

    };

    定义了一个名为test的联合类型,它含有两个成员,一个为整型,成员名为office;另一个为字符数组,数组名为teacher.联合定义之后,即可进行联合变量说明,被说明为test类型的变量,可以存放整型量office或存放字符数组teacher.

4.如何说明?

   联合变量的说明有三种形式:先定义再说明.定义同时说明与直接说明.
...   下一页
 ·c++学习历程    »显示摘要«
    摘要: 记得第一次听说电脑,大约是在高一的时候,当时学校新进了一批586,当时觉得好的不得了,还专门请了老师来给我们上课。第一次就是讲什么计算机的历史,大概是因为有领导在场,老师讲的很呆板。第二节课,没有了领导的旁听,老师开始大刀阔斧的神侃,谈到黑客的历史,程序语言的演化。当时觉得天底下最厉害的就要数黑客了,于是我一直就把黑客当作心目中的偶像。可惜的是,我们就上了这两节课,以后学校已抓学习的名义把计算......
» 本期热门文章:

©2000-2007 All Rights Reserved. 最佳浏览:1024X768 MSIE