【C++】<知识点> struct和class的区别

【C++】<知识点> struct和class的区别

码农世界 2024-05-16 后端 68 次浏览 0个评论

【1】C语言中的struct和C++中的struct区别:

  • C语言中,struct是用户自定义数据类型,其中只能包含成员变量,不能包含函数。C++中,struct是抽象数据类型,支持定义成员函数。
  • C语言中,struct没有访问权限。C++中,struct有三种访问权限。
  • C语言中,若没有使用typedef关键字则在定义结构体变量时必须显式写出struct。C++中,可以省略struct关键字。

    【2】C++中,struct和class的区别:

    • struct默认的权限为public。class默认的权限为private。
    • struct类型不能充当函数模板中的参数,而class可以。即允许存在template,而不存在template

      【3】示例代码:验证struct的默认权限为public。

      #include 
      using namespace std;
      struct A {
      	int age;
      	void setAge(int age) {
      		this->age = age;
      	}
      	int getAge() {
      		return this->age;
      	}
      };
      int main()
      {
      	A a;
      	a.setAge(10);
      	cout << a.getAge();
      	return 0;
      }

转载请注明来自码农世界,本文标题:《【C++】<知识点> struct和class的区别》

百度分享代码,如果开启HTTPS请参考李洋个人博客
每一天,每一秒,你所做的决定都会改变你的人生!

发表评论

快捷回复:

评论列表 (暂无评论,68人围观)参与讨论

还没有评论,来说两句吧...

Top