C++ C/C++结构体的区别

C/C++结构体的区别

 

>_<:C中的结构体和C++中结构体的不同之处:

  • 在C中的结构体只能自定义数据类型,结构体中不允许有函数,而C++中的结构体可以加入成员函数。

 

>_<:C++中的结构体和类的异同:

一、相同之处:

  • 结构体中可以包含函数;
  • 也可以定义public、private、protected数据成员;
  • 定义了结构体之后,可以用结构体名来创建对象。但C中的结构体不允许有函数;             
  • 也就是说在C++当中,结构体中可以有成员变量,可以有成员函数,可以从别的类继承,也可以被别的类继承,可以有虚函数。

二、不同之处:

  • 结构体定义中 默认情况下的成员是public,而类定义中的默认情况下的成员是private的。
  • 类中的非static成员函数有this指针,(而struct中没 有是错误的,一直被误导啊,经过测试struct的成员函数一样具有this指针),
  • 类的关键字class能作为template模板的关键字 即template<class T> class A{}; 而struct不可以。
  • 实际上,C中的结构体只涉及到数据结构,而不涉及到算法,也就是说在C中数据结构和算法是分离的,而到C++中一类或者一个结构体可以包含函数(这个函数在C++我们通常中称为成员函数),C++中的结构体和类体现了数据结构和算法的结合。

 

转载自:http://www.cnblogs.com/this-543273659/archive/2011/07/18/2109834.html

 

 

 

更多相关文章
  • 某基友在某地门户上班..网站总让人日..so..让吾等小菜帮忙看一下   菜文 勿喷  抛砖引玉专用   只是粗略瞄了几眼..坑啊..   \common\lib\FCKeditor\editor\filemanager\upload\php\config.php   $Config['Allowe ...
  • 注意:翻译成中文文章在我国法律规定 翻译者有中文版的版权 出于尊重 请转载时著名翻译人和原作者的署名 谢谢合作!另外文章本来想投到<黑客X档案>给朋友做的的杂志添砖添瓦 但是考虑过后 还是决定发网络 给广大的朋友共享 毕竟文章翻译质量也不好 发了刊物没准给我抹黑 文章图片我加工过 翻译意 ...
  • 继上节<Xamarin.IOS之快速入门>之后,本节将会在此基础之上具体扩展,主要是增加一个列表可以提供历史拨打电话的记录.下面我们直接进入正题.   首先打开MainStoryboard.storyboard,我们在这个基础之上继续修改.从工具栏中拖放一个Navigation Cont ...
  • 上次叉叉讲了Sqlmap简单注入(access数据库)教程,这次咱说说MySql数据库 MetInfo,是一款强大的企业网站管理系统,采用PHP+Mysql架构.   叉叉下载的是MetInfo 5.1.5的免费版本,咱不是大拿,不会分析源码,直接丢到WVS里面扫 发现注入点,打开我们的backtr ...
  • 懒人经济的兴起,让众多的互联网创业者和传统行业经营者又看到了新的市场机会.从美甲.足疗到保洁等各行各业,上门服务成为了传统企业借助互联网转型的新契机.对于大多数的创业者来说,外卖最终仍然只是巨头们的游戏.而另一个新的上门餐饮,厨师上门做饭却正在悄然兴起.如果说送外卖主攻的是上门餐饮的低端市场,那么厨 ...
  • 51CTO WOT 2015移动互联网开发者大会即将于2015年7月24-25日在北京富力万丽酒店隆重召开.本次大会共设八大技术分论坛,分别从产品与设计.平台与技术.创新与创业.移动游戏.算法分析.HTML5.运维安全.新浪微博技术等方面,为广大移动开发者解开技术迷思. 为使大家进一步了解本次大会, ...
一周排行
  • LinearLayout linearLayoutMain = new LinearLayout(this);// 自定义一个布局文件 linearLayoutMain.setLayoutParams(new Lay ...
  •  由于公司需要远程管理的服务器太多,用window自带的也不是不行,关键开个十几一二十个的时候,真的就太麻烦,每次连接要重新输入,当然,你可以保存RDP文件,可以免输入,但打开十几个的时候,你切换什么的就真的头大了  ...
  • 易网科技讯 1月30日消息,据国外媒体报道,周二有消息人士表示,在戴尔融资收购交易达成前,微软在这家即将私有化企业中的地位是亟待明确的问题之一.消息人士称,自从微软本月初提议以优先股形式入股戴尔,为私有化交易提供20 ...
  • t00ls 放出!   代码已经出来 http://www.2cto.com/guestbook/index.php?keywords=test&&page=3&${${phpinfo()}}
  • 易网科技讯 11月2日消息,2009年互联网大会今天在北京举行,易网科技作为大会战略合作门户网站.指定活动合作媒体对会议进行现场直播. 出席大会,进行了主题演讲,他认为当前中国互联网已经成为大众文化传播和新闻传播的新 ...
  • 跨平台: 话说,在北京,一般都是讲北京话的,上海,一般都是将上海话,广东,广东话...现有一公文发出,要全国执行,该当如何?——先统一翻译成普通话.各地在将普通话版本翻译成当地的方言.这里,北京.上海就是不同类型的机 ...
  •   <!--#include file="inc/conn.asp"--><SCRIPT language=javascript><!--var tt='start' ...
  • oracle_视图 ①视图 1.视图是一种虚表. 视图建立在已有表的基础上, 视图赖以建立的这些表称为基表. 向视图提供数据内容的语句为 SELECT 语句, 可以将视图理解为存储起来的 SELECT 语句. 视图向 ...
  •         了解了Windows 2008的十大新功能,我相信大家已经迫不及待的想要去安装一个Windows 2008服务器来试用了.建议朋友们可以在虚拟机里面安装Windows 2008 R2,我这里使用的是V ...
  • 从去年开始,我有机会做一个持续的项目,这个项目的客户非常的厉害,当然也非常的严格.在开始的时候我们做得顺风顺水,没有丝毫危险的情况下作出了50个人月.于是我就自大了起来,在后续的项目中,没有在投入很多,也没有关主到1 ...