c++类结构体和函数的区别是什么?

如题所述

C++中的结构体与类的区别只在于结构体的成员默认为公有成员(public可见性),而类的成员默认为私有成员(private可见性),C++中的结构体不同于C语言里的结构体,C里的结构体只能封装一些单一的数据,不能含方法,但在C++的结构体内可以有构造函数,成员函数,还可以指定成员的访问权限(如public和private)。

1、类可以被认为是结构体的一个升级版,它是由结构体演变过来的,在此基础上加了一些限制,以便更好实现面向对象的设计。结构体基本用在很多数据,需要一个结构体来封装这些数据。而类的话,是面向对象的思想,可以有很多接口让人调用,私有变量等外部不能调用,还有保护类型的变量。

2、结构体也可以被认为是一种特殊的类,它不存在任何函数,构造和析构函数也没有,而且是一个公共的的类;相关推荐>>C++中适用于类和结构体的内存池模板类

3、C++类和结构体概念基本一致,区别在于结构体在默认情况下成员是公共的(public),类在默认情况下成员是私有的(private),其他的都一样,类有的结构体也有。

4、C++结构体内部成员变量及成员函数默认的访问级别是public,而c++类的内部成员变量及成员函数的默认访问级别是private。

5、C++结构体的继承默认是public,而c++类的继承默认是private。

6、类要加上public变成共有的才能被访问,而结构本身就是共有的可直接访问。

7、C++中struct与class本质上相同的,只是默认的访问权限不同,之所以要保留struct,是为了与C兼容。

与C中结构体不同的是,C++中定义结构体变量时可以不加struct关键字,如:

struct student{

char *name;

int age;

};

student s;//在C中的话要写成struct student s;

温馨提示:内容为网友见解,仅供参考
第1个回答  2018-02-03
C++中的结构体与类的区别只在于结构体的成员默认为公有成员(public可见性),而类的成员默认为私有成员(private可见性),C++中的结构体不同于C语言里的结构体,C里的结构体只能封装一些单一的数据,不能含方法,但在C++的结构体内可以有构造函数,成员函数,还可以指定成员的访问权限(如public和private)。
 1、类可以被认为是结构体的一个升级版,它是由结构体演变过来的,在此基础上加了一些限制,以便更好实现面向对象的设计。结构体基本用在很多数据,需要一个结构体来封装这些数据。而类的话,是面向对象的思想,可以有很多接口让人调用,私有变量等外部不能调用,还有保护类型的变量。
  2、结构体也可以被认为是一种特殊的类,它不存在任何函数,构造和析构函数也没有,而且是一个公共的的类;相关推荐>>C++中适用于类和结构体的内存池模板类
  3、C++类和结构体概念基本一致,区别在于结构体在默认情况下成员是公共的(public),类在默认情况下成员是私有的(private),其他的都一样,类有的结构体也有。
  4、C++结构体内部成员变量及成员函数默认的访问级别是public,而c++类的内部成员变量及成员函数的默认访问级别是private。
  5、C++结构体的继承默认是public,而c++类的继承默认是private。
  6、类要加上public变成共有的才能被访问,而结构本身就是共有的可直接访问。
  7、C++中struct与class本质上相同的,只是默认的访问权限不同,之所以要保留struct,是为了与C兼容。
  与C中结构体不同的是,C++中定义结构体变量时可以不加struct关键字,如:
  struct student{
  char *name;
  int age;
  };
  student s;//在C中的话要写成struct student s;

c++类结构体和函数的区别是什么?
C++中的结构体与类的区别只在于结构体的成员默认为公有成员(public可见性),而类的成员默认为私有成员(private可见性),C++中的结构体不同于C语言里的结构体,C里的结构体只能封装一些单一的数据,不能含方法,但在C++的结构体内可以有构造函数,成员函数,还可以指定成员的访问权限(如public和private)。1...

c++中结构体可以定义一个函数么
C中的结构体和C++中结构体的不同之处:在C中的结构体只能自定义数据类型,结构体中不允许有函数,而C++中的结构体可以加入成员函数。C++中的结构体和类的异同:一、相同之处:结构体中可以包含函数;也可以定义public、private、protected数据成员;定义了结构体之后,可以用结构体名来创建对象。但C中...

C\/C++ 类和结构体的差别
C\/C++ 类和结构体的的区别:1、结构体基本用在很多数据,需要一个结构体来封装这些数据。而类的话,是面向对象的思想,可以有很多接口让人调用,私有变量等外部不能调用,还有保护类型的变量。2、结构体也可以被认为是一种特殊的类,它不存在任何函数,构造和析构函数也没有,而且是一个公共的的类。

C++中struct和class的区别
c中结构体和类的最大区别是结构体不能定义成员函数。c++中结构体是可以定义成员函数的,所以c++中结构体和类基本是一样,唯一的不同点在于,结构体中缺省权限是public,类中缺省权限是private。即如果你在结构体和类中没有写public等的时候,结构体默认为public,类中默认为private。

结构体和类的区别
结构体与类是C++中的两种主要数据类型,它们在内存管理和成员访问等方面存在显著差异。结构体被视为值类型,而类是引用类型。这意味着结构体数据被直接存储在栈上,而类数据则存储在堆上。结构体不支持protected访问修饰符,而类可以。类成员可以设置为protected,允许子类访问。结构体成员变量在声明时不能...

C++的成员函数和普通函数
结构体的作用是封装一组有关联的属性,它们共同维护某种概念实体的状态。在早期经典纯C工程当中,有经验的开发者早就开始利用结构体与函数指针实现简单的面向对象。但是用结构体+函数指针使用不方便不灵活,所以C++最大的使命,面向对象就诞生了。要注意的是C++与C的区别除了类之外,还有函数多态的特性、...

c结构体,c++结构体 和 c++类的区别
C++结构体 C++是面向对象的编程语言。结构体的表现形式,使用方法与C语言的结构体一致。区别:C++结构体是面向对象的,可以在其中定义函数。C++的结构体存在访问权限(默认Public)。可以通过private方法修饰内部成员变量是否可以被修改。C++类 C++类是面向对象封装的基础,功能和C++结构体类似,同样可以定义...

结构体和类的区别
结构体和类都是面向对象编程中常见的数据类型,它们的主要区别在于以下几个方面:1. 成员访问权限:在C++中,结构体的默认访问权限是 public,而类的默认访问权限是 private。这意味着,当定义一个类时,它的成员是不能被外界直接访问的,需要通过方法(成员函数)来访问;而定义一个结构体时,它的成员...

类和普通函数有什么区别
函数表示一种行为,对象或者类表示的是一种事物,从面向对象的角度来说,函数是对象的行为,被称为方法,数据则称为对象的属性;函数不具有状态,而对象具有状态,这是函数与仿函数最大的区别,也是建议使用仿函数的根本依据,它将带来极大的方便!在很久很久以前...所有的程序还是以函数为基本模块构建的...

类和普通函数有什么区别
跑动就可以是这个类的一个成员函数。比如它可以搭人,这个搭人的操作就可以是一个函数。比如能搭几个人?这个就可以是个变量,变量来记录合格人数。总之,类就是一些函数或者函数和变量的集合。跟c语言中的结构体类似。c++中的类和结构体没有什么区别,唯一区别就在结构体默认是共有,类默认是私有。

相似回答