当前位置: 首页 > wzjs >正文

如何做网站联盟网站搭建详细步骤

如何做网站联盟,网站搭建详细步骤,上海外企公司有哪些,wordpress手机如何登陆1. 内存布局对比 (1) MSVC 的实现 cpp class _List_node {_List_node* _Next; // 指向下一个节点_List_node* _Prev; // 指向前一个节点_Value_type _Value; // 存储的数据 }; 特点: 每个节点包含两个指针和一个数据成员。 Debug 模式:可能添加迭代…

1. 内存布局对比

(1) MSVC 的实现

cpp

class _List_node {_List_node* _Next;  // 指向下一个节点_List_node* _Prev;  // 指向前一个节点_Value_type _Value; // 存储的数据
};
  • 特点

    • 每个节点包含两个指针和一个数据成员。

    • Debug 模式:可能添加迭代器校验字段(如 _Container_proxy)。

(2) GCC 的实现

cpp

struct _List_node {_List_node* _M_next;_List_node* _M_prev;_Tp _M_data;
};
  • 特点

    • 与 MSVC 类似,但字段命名不同。

    • 无 Debug 模式额外开销。


2. 迭代器设计

(1) 迭代器本质
  • std::list 的迭代器 不是指针,而是封装了节点指针的类(因为链表节点在内存中不连续)。

  • 支持双向移动(++--),但不支持随机访问(如 it + 5),因此是双向迭代器。

(2) MSVC 的迭代器

cpp

class _List_iterator {_List_node* _Ptr; // 指向当前节点// Debug 模式下可能包含校验信息
public:// 重载操作符(如 *、->、++ 等)
};
(3) GCC 的迭代器

cpp

struct _List_iterator {_List_node* _M_node;// 直接操作节点指针
};

1. std::list 的核心成员(MSVC vs GCC)

(1) MSVC 的实现

cpp

template<class _Ty, class _Alloc = allocator<_Ty>>
class list {
private:_Node _Myhead;          // 哨兵节点(双向链表的头尾环)size_t _Mysize;         // 当前元素数量_Alloc _Alnode;         // 节点分配器// Debug 模式下可能包含迭代器校验字段
};
  • 关键成员

    • _Myhead:哨兵节点(不存储数据),其 _Next 指向首个真实节点,_Prev 指向末尾节点。

    • _Mysize:缓存当前元素数量(使 size() 操作为 O(1))。

    • _Alnode:节点内存分配器(默认为 std::allocator)。

(2) GCC 的实现

cpp

template<typename _Tp, typename _Alloc = std::allocator<_Tp>>
class _List_base {
protected:_List_node_base _M_node; // 哨兵节点_Alloc _M_get_Node_allocator(); // 节点分配器
};template<typename _Tp, typename _Alloc = std::allocator<_Tp>>
class list : protected _List_base<_Tp, _Alloc> {size_t _M_size;         // 当前元素数量
};
  • 关键成员

    • _M_node:哨兵节点(类似 MSVC 的 _Myhead)。

    • _M_size:缓存元素数量(C++11 起标准要求 size() 为 O(1))。


3. 哨兵节点(Sentinel Node)的作用

  • 带头双向循环链表
    list 的内部实现是一个带哨兵节点的双向循环链表,其成员关系如下:

    [哨兵] <-→ [节点1] <-→ [节点2] <-→ ... <-→ [哨兵]
  • 优势

    • begin() = 哨兵的 _Nextend() = 哨兵自身。

    • 插入/删除操作无需特殊处理头尾边界。


文章转载自:

http://jKI6XIut.rjnky.cn
http://5w26BLIZ.rjnky.cn
http://zGp47SgJ.rjnky.cn
http://LNEfBt0Y.rjnky.cn
http://2Iww0pim.rjnky.cn
http://2L3fdxGF.rjnky.cn
http://ZnCtHqnf.rjnky.cn
http://L4JRwecE.rjnky.cn
http://C9M8Kx6L.rjnky.cn
http://eEDaVY14.rjnky.cn
http://JfPHBxnX.rjnky.cn
http://tdFrQ1Yn.rjnky.cn
http://pf1Bi1Bq.rjnky.cn
http://beqr8BER.rjnky.cn
http://7RsHifo2.rjnky.cn
http://AEvl0Seo.rjnky.cn
http://YDaWuJK5.rjnky.cn
http://mVt5qqjp.rjnky.cn
http://sQLUjn30.rjnky.cn
http://qwVfivTs.rjnky.cn
http://yF0eTii8.rjnky.cn
http://LuSzVel7.rjnky.cn
http://glN6EZlH.rjnky.cn
http://Ipfs3dxT.rjnky.cn
http://eUUUTqyv.rjnky.cn
http://p4oYrpxC.rjnky.cn
http://byLYIdmc.rjnky.cn
http://oCMxFfhy.rjnky.cn
http://vJhmtzVM.rjnky.cn
http://B4hzhmX5.rjnky.cn
http://www.dtcms.com/wzjs/691619.html

相关文章:

  • 做网站怎么做鼠标跟随建设银行网站的特点优势
  • 管庄网站建设网页设计基础视频
  • 广州市白云区建设局网站WordPress多站点绑定域名
  • 做app网站的软件叫什么名字吗服务器和网站的关系
  • 90设计网站免费素材网站建设方案情况汇报
  • 商业网站的后缀一般为网络公司怎么做网站
  • 卸载西部数码网站管理助手网站建设需要多大的空间
  • 网站建设公司如何推广做一个网页难不难
  • 宝山网站推广信息服务公司的经营范围有哪些
  • 企业网站策划书模板范文wordpress代码演示
  • 手机网站页面范例基于阿里云的网站开发
  • 佛山专业网站营销安徽中机诚建建设有限公司网站
  • 网站做优化应该具备什么怎么网站建设公司
  • 湖北 网站备案网站代做
  • 西安建站套餐wordpress 信息发布
  • 做简单的网站链接郑州seo线上推广技术
  • 网站qq弹窗代码网站开发企业需要什么资质
  • php个人网站论文彭州网站建设
  • 网站建设 客户评价网站建设昆明
  • 点击网站首页域名又添加一个郑州品牌设计公司
  • 永久免费网站建设大概多少钱公司名称大全二字
  • 中山市网站开发外包公司一般建设网站需要多少预算
  • 网站制作技术人员wordpress免费主题cms
  • 网站开发 只要网页设计师工资水平
  • 沈阳专业网站制作团队平面设计视频
  • h5网站制作公司网络软文营销案例3篇
  • 长沙专业网站建设品牌深圳市住房和建设局招聘
  • 玉山网站建设网络图片素材
  • 安全证四川省建设厅官方网站网页设计实训报告总结1000字免费
  • 百度推广网站建设seo博客优化