关于Struct 与 Class的区别(class 定义对象时候不能赋初值的方法何原因)
2017-10-21 00:00
369 查看
关于Struct 与 Class的区别(包括class 定义对象时候不能赋初值的方法何原因)
C++中struct和class的区别?答:
(1)关于继承和访问权限,struct默认继承和访问权限均为public,class均为private;
(2)关于模版,在模版中,类型参数前面可以使用class或typename,不能使用struct。
( 3 ) Struct 里面没有默认无参构造函数, 而Class里面有默认的无参构造函数
关于Struct 与 Class的区别(详细):链接:http://blog.csdn.net/nocky/article/details/6195556
// class.cpp: 定义控制台应用程序的入口点。(可以运行)
#include "stdafx.h" struct STUDENT { int a; int b; char c; }; int main() { //定义Struct结构体的对象方法 struct STUDENT a, b; //(C风格) STUDENT c, d; //(C++风格) //对象的赋初值方法, STUDENT Student; Student.a = 1; Student.b = 2; Student.c = 'a'; return 0; }
//-----------------------------------------------------分割线-----------------------------------------------------------
注意:如果数据成员是私有的,或者类中有private 或 protected 的成员,就不能够使用下面这种方法初始化(如图):见谭浩强C++:p69-70
struct Time { int hour; int minute; int sec; }; Time t1 = { 14, 56, 30 };
//-----------------------------------------------------分割线-----------------------------------------------------------
参考链接:http://blog.csdn.net/k346k346/article/details/51537077
但是亲测在Win10专业版 VS2017版本里面测试编译不通过,
修正:原因已经找到了:没有在Class 或者 Student 里面没有写 public的(有多个参数的)构造函数~~~
//-----------------------------------------------------分割线-----------------------------------------------------------
相关文章推荐
- 关于打印未定义toString方法的对象
- ThinkInJava读书笔记——关于Multi Nesting Class的对象初始化方法
- 关于C/C++中 Class, Struct, enum的定义声明位置
- 关于VC6IDE的class view的问题(Go To Definition不能找到定义(实现))
- 关于SAS不能读取Excel2007文件的原因及解决方法
- Jquery.ajax不能解析json对象,报Invalid JSON错误的原因和解决方法
- class和struct做类型定义时的区别
- repeater中的checkbox 的方法以及datalist中放了一个按牛!为什么我按该按牛时候不能触发ItemCommand事件的主要原因
- 关于C_C++中struct与class的区别
- 使用cvs的时候,WEB-INF/classes中不能编译生成class文件的原因?
- JavaScript中:表达式和语句的区别 —— function和对象直接量 不能匿名定义解惑
- 关于Excel Spreadsheet 对象的方法的定义
- 使用cvs的时候,WEB-INF/classes中不能编译生成class文件的原因?
- 收集的比较全的automation服务器不能创建对象 异常原因和解决方法
- 关于《地质成图》在有些电脑上不能正常运行的原因及处理方法
- 区别对待 【找到问题发生的原因】 以及 【关于这个问题的 「正确可行」 的解决方法】
- 一个.NET工程在调用Java方法的时候不能创建JVM的问题及其原因
- 【一个实体对象不能由多个 IEntityChangeTracker 实例引用】原因及解决方法
- c++对象模型(关于STRUCT和CLASS)
- class和struct做类型定义时的区别