标签:
C++保留了C语言的 struct,并且加以扩充。在C语言中,struct 只能包含数据成员,不能包含成员函数。而在C++中,struct 类似于 class,既可以包含数据成员,又可以包含成员函数。
在C++中,没有抛弃C语言中的 struct 关键字,其意义就在于给C语言程序开发人员有一个归属感,并且能让C++编译器兼容以前用C语言开发出来的项目。
C++ struct 示例:
#include<iostream> using namespace std; struct Student{ char *name; float score; Student(char*, float); void say(); }; Student::Student(char *name, float score){ this->name = name; this->score = score; } void Student::say(){ cout<<name<<"的成绩是 "<<score<<endl; } int main(){ Student stu("小明", 95.5f); stu.say(); return 0; }
该程序可以正常编译并运行,说明 struct 默认的成员都是 public 属性的,否则不能通过对象访问成员函数。如果将 struct 关键字替换为 class,那么就会编译报错。
标签:
原文地址:http://www.cnblogs.com/Caden-liu8888/p/5797025.html