C++ 学习

原创 2015年11月17日 18:23:28

union (共用体)


  共用体里可以包含多个变量类型,他们公用一块内存,也就是说,每次只能出现一个,

  example : 

      union test{

           int   a;

           double b;

      }


   共用体test 中的a, b使用同一块内存,只能调用test.a or test.b二者绝对不能同时出现;

   共用体所占内存:   共用体变量中长度最长的类型的字节数

   共用体第二次调用时,假如与第一次调用时类型不同,第二次所赋予的值会覆盖掉第一次的内容,但是,不一定是完全覆盖,比如说我第一次调用 test.b., 第二次调用test.a; b是8个字节, 而a 是四个字节,那么显然,剩余四位覆盖不到。


 

枚举类型 enum  


 C++ 所提供的另一种创建 符号常量的方式,它可以替代 const ,也可以定义新的类型。用法与结构体相似:

  enum test{ one, two, three, four, five = 5, six , seven};

  test p;

  其中 test 称为 enumeration  one, ...seven称为enumerator 在默认情况下, 第一个枚举量(enumerator)的值为0, 此后若没特殊赋值的枚举量其值是前一个的+1,如果有特殊赋值,那么此枚举量的值就是我们所赋予的值。 也就是说  我们的test 中  one = 0, tow = 1, three = 2, four = 3, five = 5, six = 6;

  在不使用强制类型转换的时候,p的值只能是 test 所定义的 enumerator中的值。 枚举量是int ,可以转换成int复制给整型变量,但是反之则不可以;

  int a = one (valid)  ;  a = 3 + six ( valid)   p = 2 (invalid) p = 1 + six(invalid)  

  注意  :  p = one + six (invalid) 因为c++ 中并没有定义枚举 操作符 + ,所以在运算过程中, 会把 one six 转换成相应的 int , 

                  如果 int 的值合法,在强制类型转换的情况下,是可以复制给 枚举变量的 如 p = (test) 3;  


  枚举值的取值范围

    C++中每个枚举值都有取之范围,  枚举上限 : 设枚举量的最大值为 max 最小值 min, 则上限就是 大于 max 的最小 2 的幂 - 1, 同理 下限 : 为 大于min的最小 2 的幂 + 1

   如   test 的枚举上限就是 7, 下限就是 -1

 


我第一年的C++学习之路 —— C++学习方法不断转变

我第一年的C++学习之路 —— C++学习方法不断转变 两本让我提升的书:      对于C++,我首先想要讲讲的是《C++ Primer Plus》与《C++ Primer》这两本书,很多人讨论...
  • neicole
  • neicole
  • 2011年09月14日 07:52
  • 16782

一篇非常好的c++学习方法,转自贴吧

原帖地址:点击打开链接http://tieba.baidu.com/p/1113064961      Javascript是世界上最受误解的语言,其实C++何尝不是。坊间流传的错误的C++学习方法一...
  • lsgqjh
  • lsgqjh
  • 2015年04月10日 20:06
  • 4981

C++学习的一些经历

闲扯C++道路的经历前言不知道会不会被骂,毕竟作为一个还不能称为精通C++的人说这些在大神面前总显得有些班门弄斧了。 周围有不少的同学朋友编程都相对比较差,感觉是缺少一些方法,我把我的历程经验贴出来,...
  • lipeng08
  • lipeng08
  • 2016年03月25日 15:36
  • 9572

大牛C++编程开发学习建议50条

每个从事C++开发的朋友相信都能给后来者一些建议,但是真正为此进行大致总结的很少。本文就给出了网上流传的对C++编程开发学习的50条建议,总结的还是相当不错的,编程学习者(不仅限于C++学习者)如果真...
  • gggg_ggg
  • gggg_ggg
  • 2015年03月02日 10:20
  • 4912

引导你逐步深入学习C++

作者简介:安晓辉,程序员、技术管理者、作家、职业规划师、在行行家、分答答主,著有《Qt on Android 核心编程》、《Qt Quick核心编程》和《你好哇,程序员》,创建订阅号“程序视界”。 ...
  • shufac
  • shufac
  • 2016年07月11日 18:56
  • 1026

c++学习资料

《VC++深入详解》孙鑫经典VC++视频教程 http://blog.csdn.net/rainbow203/article/details/8143574...
  • shakevincent
  • shakevincent
  • 2016年09月04日 22:24
  • 1472

C++编程学习52个经典网站 强力推荐

转自:http://blog.csdn.net/microzone/article/details/6684436 C/C++是最主要的编程语言。这里列出了50名优秀网站和网页清单,这些网站...
  • tianyi1991
  • tianyi1991
  • 2015年03月15日 18:09
  • 2104

强烈推荐一个在线学习C++的网站,非常赞!简单+高效+实用!

网址:http://en.cppreference.com/w/cpp/language/reference 为什么点赞: 1、在Search栏里输入你需要参考的内容,如lvalue ...
  • bianjun1075
  • bianjun1075
  • 2016年10月23日 10:21
  • 1749

如何学习C++ C++学习路线图 从0开始一直到写出WIN32应用程序

逛了这么久的论坛,每次看到发帖量,编程语言区的可谓是门可罗雀,而菜鸟乐园每天都是门庭若市,其实我们本应该不这么浮躁, 安心掌握一门语言,你才能真正把自己的爱好变成一门技术,这篇文章虽然不能帮助想踏...
  • liuwei271551048
  • liuwei271551048
  • 2014年03月11日 13:19
  • 1402

c++学习重点

C++学习重点窥探课程名称:从基础训练到专家经验 ─ OOP 系列课程课程主旨:以六个子课程,为学员建立完整良好之 C++/OOP 实力          涵盖 ●语法语意、●物件模型、●泛型设计、●...
  • Athenaer
  • Athenaer
  • 2007年07月26日 20:31
  • 1727
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:C++ 学习
举报原因:
原因补充:

(最多只允许输入30个字)