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

吉林省建设监理协会网站诚信建设营销型企业网站的含义

吉林省建设监理协会网站诚信建设,营销型企业网站的含义,巴州建设工程信息网,深圳招聘信息最新招聘信息查询文章目录 类模板类函数什么是友元函数?什么是内联函数?VECTOR哈希表栈队列映射与解除映射mmap()munmap可变参数 va_start()-va_send()vsnprintf()C/C++异常处理list红黑树类 基类、父类、顶层类、抽象类 子类、派生类 模板类 在C++中,模板类(Template Class)是一种通用…

文章目录

      • 模板类
    • 函数
      • 什么是友元函数?
      • 什么是内联函数?
    • VECTOR
    • 哈希表
    • 队列
    • 映射与解除映射
      • mmap()
      • munmap
    • 可变参数 va_start()-va_send()
      • vsnprintf()
    • C/C++异常处理
    • list
    • 红黑树

基类、父类、顶层类、抽象类
子类、派生类

模板类

在C++中,模板类(Template Class)是一种通用的类模板,可以根据不同的数据类型生成具体的类。模板类允许将类的定义与实际使用分离,提供了代码复用和泛型编程的方式。

模板类的语法形式如下:

template <typename T>
class ClassName {// 类成员和方法
};

其中,template 是模板声明的开始部分,T 是一个占位符类型,表示在实例化模板时将被替换为具体的数据类型。T 可以根据需要自定义,比如使用 typename 或 class 关键字来指定类型参数。

通过使用模板类,可以创建适用于不同数据类型的对象,而无需为每个特定数据类型编写单独的类定义。例如,以下是一个模板类 Stack 的示例代码:

template <typename T>
class Stack {
private:T* stackArray;  // 数据存储数组int top;        // 栈顶指针int capacity;   // 栈的容量public:Stack(int size) : capacity(size), top(-1) {stackArray = new T[capacity];}~Stack() {delete[] stackArray;}void push(const T& item) {if (top == capacity - 1) {// 栈已满// 扩展栈的容量或抛出异常...} else {stackArray[++top] = item;}}T pop() {if (top == -1) {// 栈为空// 抛出异常或返回默认值...} else {return stackArray[top--];}}// 其他栈操作方法...
};

在上述示例中,Stack 是一个模板类,使用 typename T 作为类型参数。在模板类的成员函数中,可以使用 T 表示具体的数据类型。

通过实例化模板类,可以创建不同类型的栈对象,如 Stack、Stack 等。编译器会根据实际使用情况自动进行类型推导,生成对应的具体代码。

Stack<int> intStack(10);
intStack.push(42);
int poppedItem = intStack.pop();Stack<double> doubleStack(5);
doubleStack.push(3.14);
double poppedItem = doubleStack.pop();

模板类的优点是可以提供通用和灵活的代码,适用于多种数据类型。它能够在编译时进行类型检查,并减少代码冗余。模板类广泛应用于容器类(如向量、链表、队列、映射等)、算法和数据结构的实现。

需要注意的是,模板类的定义通常直接放在头文件中,因为编译器需要在每个使用模板类的地方生成相应的代码。

函数

什么是友元函数?

在C++中,友元函数(friend function)是在类的声明中被声明为友元的非成员函数。友元函数可以访问类的私有成员和受保护成员,即使它们不是类的成员。通过友元函数,我们可以允许其他函数或类直接访问另一个类的私有或受保护成员。

下面是一些关于友元函数的特点和用途:

友元函数的声明通常出现在类的内部,但不是类的成员函数。它可以在类的任何地方进行声明,例如在公共、私有或保护部分。

友元函数的定义必须在类外部进行,与类的定义分开。

友元函数在其定义中使用类的对象作为参数来访问类的成员。

友元函数被声明为友元后,它就可以直接访问该类的私有成员和受保护成员,而无需通过对象调用。

友元函数不继承,也不属于类的成员,因此不能被派生类继承。

友元函数对于需要操作类的私有数据或实现与该类紧密相关的功能的函数非常有用。例如,在重载运算符时,可以使用友元函数来直接访问类的私有成员并执行相应的操作。另一个例子是,如果你想实现一个函数,该函数需要访问多个类的私有成员以执行某些操作,那么你可以将该函数声明为这些类的友元函数。

下面是一个简单的示例,展示了友元函数的使用:

#include <iostream>class MyClass {
private:int data;public:MyClass(int value) : data(value) {}friend void printData(const MyClass& obj);
};void printData(const MyClass& obj) {std
http://www.yayakq.cn/news/131920/

相关文章:

  • 长沙做网站微联讯点很好市场调研报告800字
  • 含关键词的网站建设本地的番禺网站建设
  • 网站设计深圳网站建设公司建立wordpress
  • 建设微网站平台上海网站建设网页制作怎么样
  • 红酒网站模板深圳公司形象墙制作
  • 南宁太阳能网站建设万网空间上传网站吗
  • 娱乐网站开发多少钱WordPress多用户商城插件
  • 科技期刊网站建设临沂网站排名
  • 网站设计怎么做超链接wordpress微信登录设置
  • 南京 招网站开发金坛市常州网络推广
  • 哪个网站做外贸年费比较便宜广东电子商务网站建设价格
  • 网站建设每天的工作佛山做网站公司
  • 服装设计网站大全宁德市安全教育平台
  • vps搭建网站需要空间营销策划咨询机构
  • 个性化网站设计开饰品店网站建设预算
  • 建网站发信息做推广建筑工程完工证明格式
  • 中国建设银行东营分行网站汽车之家电脑网页版
  • 青岛网站建设大全服装展示网站源码
  • 盐城网站建设要多少钱天津工程信息网
  • 大型集团网站网络营销的主要内容包括
  • 网络科技公司网站制作做专业搜索引擎优化
  • 网站建设企业文化一站式营销平台
  • 首钢水钢赛德建设有限公司网站微信小程序电脑端打开
  • 品质好的网站制作东莞网站建设 信科网络
  • 免费做网站公司ydwzjs软文写作的基本要求
  • 六安网站建设全包视频链接生成
  • 经典的高端网站建设公司着陆页设计怎么建网站教程视频app
  • 石家庄网站seo外包万网总裁张向东
  • 东莞网站建设方案表网页小游戏手机版
  • 上海浦东建设管理有限公司网站创新网站内容建设