千家信息网

C++ void的基础概念是什么

发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,本篇文章为大家展示了C++ void的基础概念是什么,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。C++编程语言中的很多概念都值得我们去不断的学习,不断的从中
千家信息网最后更新 2026年11月02日C++ void的基础概念是什么

本篇文章为大家展示了C++ void的基础概念是什么,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。

C++编程语言中的很多概念都值得我们去不断的学习,不断的从中积累经验以帮助我们在程序编写时获得更大的帮助。比如今天为大家介绍的C++ void就是ige比较重要的内容。许多初学者对C++ void及void指针类型不甚理解,因此在使用上出现了一些错误。本文将对void关键字的深刻含义进行解说,并详述void及void指针类型的使用方法与技巧。

void的字面意思是"无类型",void *则为"无类型指针",void *可以指向任何类型的数据。

void几乎只有"注释"和限制程序的作用,因为从来没有人会定义一个void变量,让我们试着来定义:

void a;

这行语句编译时会出错,提示"illegal use of type 'void'"。不过,即使void a的编译不会出错,它也没有任何实际意义。

  • C++剪切板常用应用技巧分享

  • C++ Doxygen实现功能分享

  • C++ sprintf格式化解决方法详解

  • C++函数对象与函数指针不同之处

  • C++单向链表实现代码解读

C++ void真正发挥的作用在于:

(1) 对函数返回的限定;

(2) 对函数参数的限定。

我们将在第三节对以上二点进行具体说明。

众所周知,如果指针p1和p2的类型相同,那么我们可以直接在p1和p2间互相赋值;如果p1和p2指向不同的数据类型,则必须使用强制类型转换运算符把赋值运算符右边的指针类型转换为左边指针的类型。

例如:

float *p1;  int *p2;  p1 = p2;

其中p1 = p2语句会编译出错,提示"'=' : cannot convert from 'int *' to 'float *'",必须改为:

p1 = (float *)p2;

而void *则不同,任何类型的指针都可以直接赋值给它,无需进行强制类型转换:

void *p1;  int *p2;  p1 = p2;

但这并不意味着,void *也可以无需强制类型转换地赋给其它类型的指针。因为"无类型"可以包容"有类型",而"有类型"则不能包容"无类型"。道理很简单,我们可以说"男人和女人都是人",但不能说"人是男人"或者"人是女人"。下面的语句编译出错:

void *p1;  int *p2;  p2 = p1;

提示"'=' : cannot convert from 'void *' to 'int *'"。

上述内容就是C++ void的基础概念是什么,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注行业资讯频道。

类型 C++ 指针 函数 编译 概念 不同 内容 语句 强制 提示 基础 不断 作用 女人 就是 技巧 技能 指向 数据 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 科技互联网产品 科技制造互联网公司 壕鑫互联网络科技 深圳天众互联网科技公司 新华互联网科技校企合作 太原新华互联网科技学校怎么样 博兴的互联网电子科技公司 小米互联网科技园设置 成都互联网科技公司100强 广州恒生互联网科技有限 互联网科技创新的路径 长沙茂晟互联网科技有限公司 互联网科技圈年度人物 北京市互联网新科技 互联网风格科技公司名称 易企秀互联网科技是做什么的 昆明中奇联合互联网科技 云鲸互联网络科技有限公司 张家口科技产业互联网平台 优雇互联网科技有限公司 互联网科技论坛 成都仁贤领冠互联网科技有限公司 互联网企业和科技型企业 南山科技园互联网公司有哪些 科技类公司包括互联网吗 如何创新互联网科技 广州新华互联网科技学校电竞方面 上海科技产业互联网平台 雨阳互联网卡科技有限公司 容联科技互联网电商
0