您的位置:首页 > 编程语言 > C语言/C++

C++ 语法学习

2016-04-24 18:06 239 查看
Enum:

           作用域:


                 全局作用域:  enum classname{ membername =  value}  (结尾不需要分号,和块类似)。

                 局部作用域:  enum class classname{ membername =  value}

           初始化: 

                 enum定义了新的类型,所以一定要用对象来初始化enum对象。

               *  一个全局作用域的enum对象或成员可以自动转化为int类型。但是局部作用域的不可以。

           前值声明:

                   C++11中可以前置声明enum。

                   enum classname : typename; 如果是全局作用域的enum必须指定其类型。

                   enum class classname ; 局部作用域的enum可以不指定类型,将会隐式转化为int类型。

namespace:

                   namespace可以不连续,完成接口与实现分离。

                    #ifndef  test_h

                    #define test_h


                    namespace


                    {

                         class fly{};

                          void cool ();

                    }

                    #endif

                    #include "test_h"

                    namespace

                   {

                        void cool(){}

                   }

                         

                     局部作用域中如果有和全局作用域中重名的变量或函数,将会隐藏全局版。 使用using声明让函数可见。

                     当函数中参数有类对象时,调用函数时也会去类声明的作用域中查找。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: