zoukankan      html  css  js  c++  java
  • 泛型指针,原生指针和智能指针

    1. 泛型指针
    泛型指针有多种含义。
    (1) 指void*指针,可以指向任意数据类型,因此具有“泛型”含义。
    (2) 指具有指针特性的泛型数据结构,包含泛型的迭代器、智能指针等。
    广义的迭代器是一种不透明指针,能够实现遍历访问操作。通常所说的迭代器是指狭义的迭代器,即基于C++的STL中基于泛型的iterator_traits实现的类的实例。
    总体来说,泛型指针和迭代器是两个不同的概念,其中的交集则是通常提到的迭代器类。
    2. 原生指针就是普通指针,与它相对的是使用起来行为上象指针,但却不是指针。
    说“原生”是指“最简朴最基本的那一种”。因为现在很多东西都抽象化理论化了,所以“以前的那种最简朴最基本的指针”只是一个抽象概念(比如iterator)的表现形式之一。
    3. 智能指针是C++里面的概念:由于 C++ 语言没有自动内存回收机制,程序员每次得自己处理内存相关问题,但用智能指针便可以有效缓解这类问题。
    引入智能指针可以防止出现悬垂指针的情况
    一般是把指针封装到一个称之为智能指针类中,这个类中另外还封装了一个使用计数器,对指针的复制等操作将导致该计数器的值加1,对指针的delete操作则会减1,值为0时,指针为NULL
  • 相关阅读:
    python 开启多进程的两种方法
    Python
    Python
    路由器配置
    python 自定义报头 实现大文件传输
    python socket
    Spring MVC 实现文件的上传
    SpringMVC异常处理
    SpringMVC 返回值类型,参数传递 解决乱码
    Spring—MVC案例
  • 原文地址:https://www.cnblogs.com/ransw/p/3955514.html
Copyright © 2011-2022 走看看