mfc中的结构体和类 在vc中写程序,十分不明白的一点是:有了类这个玩意儿,为什么还要用到结构体感觉十分不伦不类的样子有大虾能解释下么 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 class的成员默认私有,struct成员默认公开。除此之外无区别。 WINDOWS系统设计的时候,C++还没有标准, SDK里的C结构是历史留下来的.=======================================================FreeLaxy, your backup.======================================================= C++兼容C语言,且具备C语言的性能。 结构体是C发展而来的东西,C++兼容C中的结构体--------------------------我们现在之所以还使用结构体,我是这么理解的:(1)结构体更侧重于数据体,而类主要侧重于方法,所以如果是包含数据变量定义的,我们就直接使用结构体,如果比较侧重于方法的实现,则使用类来实现;当然结构体重也是可以定义方法的。(2)结构体是一种特殊的类,我们可以像一样使用,也可以像类一样继承:结构体继承结构体,类继承结构体。(3)结构体和类的区别: class中默认的成员访问权限是private的,而struct中则是public的; 从class继承默认是private继承,而从struct继承默认是public继承。 在C++中类与结构应该没有太大的区别的了,但是,C++要兼容C,所以它还得支持结构。 温习了个人的用法是结构体多用于数据,类多用于方法和操作。从习惯上看到一个结构体就知道这个是数据容器,而如果看到一个类,那么就知道需要关注这个类的方法函数以及实现的功能。而结构体就简单多了,关注其data就行了。其他同上几个朋友的说明了。 1. 在C语言中, 只有结构体的概念, 这个结构体,里面更是不能直接放函数,要用函数指针。2. 在C++里,结构体和类99%都是一样的,唯一不一样的,就是成员(变量、函数)作用域不一样。 struct(结构体)里,默认情况下,所有的成员变量都是public的 class(类)里,默认情况下,所有的成员变量都是private的 为什么结构体也可以用::某个struct aa::fun(){}这是什么道理呀,编译还出错,说a is not a class or namespace name 求救:VS2005转VS2008后,编译Dll出错。 关于 elementFromPoint 函数的问题 关于csv文件的读取 如何判断其编码 结构体动态问题 急,请好心人帮忙 wndclass.cbClsExtra和wndclass.cbWndExtra有什么区别 dhcp编程的资料谁有啊? 怎么调用MFC扩展DLL中导出的整个类 急购图象压缩源代码! 如何指定路径? 已知4点,怎样求焦点呢? 菜鸟问题: error C2660: 'random' : function does not take 1 arguments
struct成员默认公开。
除此之外无区别。
FreeLaxy, your backup.
=======================================================
--------------------------
我们现在之所以还使用结构体,我是这么理解的:
(1)结构体更侧重于数据体,而类主要侧重于方法,所以如果是包含数据变量定义的,我们就直接使用结构体,如果比较侧重于方法的实现,则使用类来实现;当然结构体重也是可以定义方法的。
(2)结构体是一种特殊的类,我们可以像一样使用,也可以像类一样继承:结构体继承结构体,类继承结构体。
(3)结构体和类的区别:
class中默认的成员访问权限是private的,而struct中则是public的;
从class继承默认是private继承,而从struct继承默认是public继承。
2. 在C++里,结构体和类99%都是一样的,唯一不一样的,就是成员(变量、函数)作用域不一样。
struct(结构体)里,默认情况下,所有的成员变量都是public的
class(类)里,默认情况下,所有的成员变量都是private的
某个struct a
a::fun(){}
这是什么道理呀,编译还出错,说a is not a class or namespace name