C++初步学习笔记


一、命名空间(namespace)相关

1 个人理解:

  • 为了避免整合资源中存在的重名矛盾而采取的区别资源的措施;

2 命名空间的定义:

  • 比如要定义一个命名空间A:

        namespace A
    {
    //。。。。
    }

3 命名空间的使用:

  • 使用前提前声明:

        using namespace std;
  • 在想使用的某命名空间A下的函数等前加上A::

        A::fun();	//类似这样

二、常量(const)相关

1.个人理解:

  • 被const修饰后,无法通过被修饰物修改;
  • 相当于指定一定权限(访问、修改等);

2.const 和 指针

情况一:const 修饰 *p

  • 例如:

         const int *p;
  • 此时不能对 *p 进行赋值操作;

  • 但可以修改 p 的指向;

情况二:const 修饰 P

  • 例如:

         int * const p;
  • 此时不能修改 p 的指向;

  • 但能对 *p 进行赋值操作;

情况三:const 修饰 p 且 修饰 *p

  • 例如:

        const int * const p;
  • 此时无论是 p 的指向还是 *p 都无法修改;

3.const 和 引用

  • 和上面的类似,仅给出一个样例:

        int x
    const int &y = x; x=10; //合法
    y=20; //不合法

三、函数重载:

  • 理解:

    • 范围:相同作用域内
    • 用 同一函数名 定义的 多个不同的函数;
  • 要求:
    • 貌似计算机会对我们 定义的函数 && 参数的类型 在内部进行重新命名;
    • 所以,参数个数不同||存在某个参数类型不同,均可;

四、函数内联:

  • 用法:

    • 用inline修饰函数;
  • 相关:
    • 内联编译是建议性的;
    • 编译时具体如何由编译器决定的;
    • 逻辑简单,调用频繁的函数可以建议使用内联;
    • 递归函数无法进行内联;

五、内存管理

  • 貌似具体挺多奇奇怪怪的问题的,写多了慢慢感受吧;

  • 内存的申请和释放不能和C语言的混用;

  • 内存申请:

      int *p = new int;
    int *arr = new int [10];
  • 内存释放:

      delete p;
    delete []arr;

End.

C++暑期学习笔记的更多相关文章

  1. Django学习笔记(三)—— 型号 model

    疯狂暑期学习 Django学习笔记(三)-- 型号 model 參考:<The Django Book> 第5章 1.setting.py 配置 DATABASES = { 'defaul ...

  2. 获取编译学习笔记 (六)—— si、di,双环

    疯狂暑期学习  汇编入门学习笔记 (六)-- si.di,双重循环 參考: <汇编语言> 王爽 第7章 1. and和or指令,与[bx+idata] and和or.就不多说了. [bx+ ...

  3. JavaSE中Collection集合框架学习笔记(3)——遍历对象的Iterator和收集对象后的排序

    前言:暑期应该开始了,因为小区对面的小学这两天早上都没有像以往那样一到七八点钟就人声喧闹.车水马龙. 前两篇文章介绍了Collection框架的主要接口和常用类,例如List.Set.Queue,和A ...

  4. js学习笔记:webpack基础入门(一)

    之前听说过webpack,今天想正式的接触一下,先跟着webpack的官方用户指南走: 在这里有: 如何安装webpack 如何使用webpack 如何使用loader 如何使用webpack的开发者 ...

  5. PHP-自定义模板-学习笔记

    1.  开始 这几天,看了李炎恢老师的<PHP第二季度视频>中的“章节7:创建TPL自定义模板”,做一个学习笔记,通过绘制架构图.UML类图和思维导图,来对加深理解. 2.  整体架构图 ...

  6. PHP-会员登录与注册例子解析-学习笔记

    1.开始 最近开始学习李炎恢老师的<PHP第二季度视频>中的“章节5:使用OOP注册会员”,做一个学习笔记,通过绘制基本页面流程和UML类图,来对加深理解. 2.基本页面流程 3.通过UM ...

  7. 2014年暑假c#学习笔记目录

    2014年暑假c#学习笔记 一.C#编程基础 1. c#编程基础之枚举 2. c#编程基础之函数可变参数 3. c#编程基础之字符串基础 4. c#编程基础之字符串函数 5.c#编程基础之ref.ou ...

  8. JAVA GUI编程学习笔记目录

    2014年暑假JAVA GUI编程学习笔记目录 1.JAVA之GUI编程概述 2.JAVA之GUI编程布局 3.JAVA之GUI编程Frame窗口 4.JAVA之GUI编程事件监听机制 5.JAVA之 ...

  9. seaJs学习笔记2 – seaJs组建库的使用

    原文地址:seaJs学习笔记2 – seaJs组建库的使用 我觉得学习新东西并不是会使用它就够了的,会使用仅仅代表你看懂了,理解了,二不代表你深入了,彻悟了它的精髓. 所以不断的学习将是源源不断. 最 ...

随机推荐

  1. 熟悉一下oncontextmenu事件的知识

    定义和使用 只要点击鼠标右键,就触发oncontextmenu事件并打开上下文菜单. 需要注意的是:所有主流浏览器都支持oncontextmenu事件,但其中的contextmenu元素只有FireB ...

  2. Node.js之HTTP请求与响应

    在C#.OC中也是客户端发起一个请求,服务端作出响应.我们可以把这个过程抽象理解 . 1.客户端给服务端发起请求相当于向服务端写入一个流(writable) 2.服务端读取客户端的流(readable ...

  3. awk 统计文件中按照某列统计某列的和(sum)

    把第一列相同的名称的第二列加起来: [root@localhost cc]# cat 1.txtaaa 10 bbb 20aaa 30ccc 40ccc 20ccc 40 [root@localhos ...

  4. 域名(Domain Name)

    是由一串用点分隔的名字组成的Internet上某一台计算机或计算机组的名称,用于在数据传输时标识计算机的电子方位(有时也指地理位置,地理上的域名,指代有行政自主权的一个地方区域). 域名是一个IP地址 ...

  5. ubuntu系统

    Ubuntu 18.04 NVIDIA驱动安装总结:(需要和自己电脑上的显卡配套) https://blog.csdn.net/tjuyanming/article/details/80862290 ...

  6. jade——创建第一个jade模板

    什么是jade? jade是node.js的一个模板引擎,参考了haml的语法,是简写的html语言. 使用单个标签代替双标签,类似于Python,通过缩进来确定从属关系,没有结束符号,非常简洁,使用 ...

  7. C#的async和awaiit的一些记录

    一,最近在学习abp的东西.发现其中作者在获取数据时,大量的使用了async和awaiit.好吧,因为不太懂,所以网上搜搜,在这里记录一下. 先来看一段代码.调用UpdateUserAsync会返回一 ...

  8. 微信小程序开发总结(详细)

    转载: 小程序开发总结(详细) 这段时间一直在做小程序,总结下.后续可能会不断更新,努力写仔细点,争取让人看到就能会写. 一,页面结构. 这基本是小程序的标准目录结构.我们从上到下解释下:pages文 ...

  9. HTML学习笔记《一》 ---- HTML基本认识

    HTML 基本认识 一.简介 1.HTML是超文本标记语言,标准通用标记语言下的一个应用,解释性语言. 2.“超文本”就是指页面内可以包含图片.链接,甚至音乐.程序等非文字元素. 3.超文本标记语言的 ...

  10. iframe的探讨

    用法 1.iframe是用来在网页中插入第三方页面,早期的页面使用iframe主要是用于导航栏这种很多页面都相同的部分,这样在切换页面的时候避免重复下载. 优点 1.便于修改,模拟分离,像一些信息管理 ...