关于类class

bupo_007 2007-02-04 02:35:23
C++的class是不是相当于C的struct,但是C的结构里的内容是数据,而C++的class里面有函数,如:
class classname{
public:
……;
……;
private:
……;
……;
}
有点不理解
请解释一下class里的public与private
通俗一点
谢谢!!!
...全文
227 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
takecareofmyself 2007-02-07
  • 打赏
  • 举报
回复
其实不光默认访问权限不一样,还有很多,比如:
构造函数、析构函数、复制构造函数等,(运算符重载没测试过)
struct 只能想内部类型一样,直接定义,如A a,指针A *pa = new A等,只能这样使用
class 就不一样了,可以b = a + 3(只要有int做参的构造函数和+的重载),还可以继承、多继承……
bupo_007 2007-02-05
  • 打赏
  • 举报
回复
为什么有的可以
有的不可以?
小弟不才,请指教
bupo_007 2007-02-05
  • 打赏
  • 举报
回复
type_A.a = 9;//可以
type_B.b = 'h';//不可
type_A.func_pub();//可以
type_B.func_private();//不可以
为什么?
bupo_007 2007-02-05
  • 打赏
  • 举报
回复
谢谢
xyjchinese 2007-02-05
  • 打赏
  • 举报
回复
to kk_1982(LovingYouC++)
可以吗?我没在struct里重载过操作符.

抱歉,误导了,十分抱歉.
hungerfool 2007-02-05
  • 打赏
  • 举报
回复
ls,struct 的操作符也可以的重载的吧
知识访问权限上的不一样拉
xyjchinese 2007-02-05
  • 打赏
  • 举报
回复
class != struct

class可以说和struct一点关系也没有,也可以说是升级了struct(这样说有时候会被取笑的,呵呵)

C语言的struct没有访问权限一说,其内部也不可以有函数.
Cpp的struct中可以有函数,有构造函数和析构函数,默认的访问权限为public;class中可以有函数,有构造函数和析构函数,默认访问权限为private.

总之两者差距很的大,比如说operator啊,等等

happydreamer 2007-02-05
  • 打赏
  • 举报
回复
使用C++的类机制用户能够定义自己的数据类型
长尾巴的悟空 2007-02-05
  • 打赏
  • 举报
回复
struct 是一个特殊的类
默认情况下是
public:所有成员可以访问
而class
默认情况下是
private
只有自己的类成员可以访问.外部成员不允许访问
taodm 2007-02-05
  • 打赏
  • 举报
回复
认真看C++ Primer,上面都有,而且不会误导你。
kimiya25 2007-02-04
  • 打赏
  • 举报
回复
struct 不可以继承 class可以.. 最大区别了.
aseth 2007-02-04
  • 打赏
  • 举报
回复
C++的class==C的struct;
就是struct中默认是public,而class默认是private。其他的都一样的。
Estfania 2007-02-04
  • 打赏
  • 举报
回复
C++的class是相当于C的struct;
但又有不同,struct中,默认的是public,而class中默认的是private;
struct中也是可以有函数的;


关于:public和private
e.g:
class typename
{
public:
int a;
private:
char b;
public:
void func_pub()
{
a = b;
}
private:
void func_private()
{
a = b;
}
};
typename type_A,type_B;
type_A.a = 9;//可以
type_B.b = 'h';//不可
type_A.func_pub();//可以
type_B.func_private();//不可以
bupo_007 2007-02-04
  • 打赏
  • 举报
回复
类里封装的是操作吗?

33,311

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 新手乐园
社区管理员
  • 新手乐园社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧