定义类 声明类有什么区别

1.如:classtime{...}//为什么是类的声明?2.定义和声明究竟有什么区别何时一定要使用?弱弱的问问:类有定义么?... 1.如:class time
{...}//为什么是类的声明?
2.定义和声明究竟有什么区别 何时一定要使用?
弱弱的问问:类有定义么?
展开
 我来答
娱乐小八卦啊a
高粉答主

2019-10-30 · 娱乐小八卦,天天都知道
娱乐小八卦啊a
采纳数:256 获赞数:117860

向TA提问 私信TA
展开全部

声明只是告诉编译器有这么一个变量,但是没有为它分配空间;定义则是为该变量分配空间。

比如:

class B; //类B的声明

class A{

//..............................

B * ptr_B;.

};

class B{  //类B的定义

//....................

};

扩展资料

关于头文件包含类定义的说明如下:

类的定义是具有内部链接特性的,即它不是声明。

不能在同一编译单元(即不在一个cpp文件中)重复出现,但是它具有内部链接,(所谓内部链接指的是该名称对于所在编译单元是局部的,在链接时不会与其他编译单元中同样的名称产生命名冲突),所以类如果要在单个编译单元之外使用它必须被定义在一个头文件中。

用struct声明的类,如果对其成员不作private或public的声明,系统会将其默认为public(公有的),如果想分别指定私有和公用成员,则应用private或public作显示声明。

而用class声明的类,如果不作private或public的声明,系统将其成员默认为private(私有的),在使用时也可以自己用显示声明改变。

gtgameking
推荐于2017-10-14 · TA获得超过312个赞
知道小有建树答主
回答量:165
采纳率:0%
帮助的人:164万
展开全部
我先说声明和定义的区别吧,这个包含了所有类型的变量,包括类类型。
int a;是一个整型变量的声明,而int a = 1;就是一个声明再加定义。而char* p;是一个声明,而 p = NULL,就是变量的定义。
class time{};是一个类的声明,因为这样写一般只声明了类里的成员变量(没有初始化的,也不能初始化,除了常量),还有函数的声明。函数声明也就是只有函数名,没有函数体,这个应该了解吧。当然函数声明和定义可以放在一起,一并在clas time{}里面。一般是先声明了函数,再在外面定义函数体,同时也就是类的定义啦。
2、所以总的说,声明就是告诉编译器有这么一个变量,定义就是告诉编译器这个变量有多大,是干什么用的。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
风行天下中
推荐于2017-09-23 · TA获得超过561个赞
知道小有建树答主
回答量:369
采纳率:100%
帮助的人:215万
展开全部
类的声明只是告诉编译器有这么一个类,它的名字是XXX,它具有哪些成员函数,哪些成员变量;而定义类是通过实例化类,对其分配存储空间。声明和定义最大的分别是是否分配存储空间。
例如,这是类的声明:
class Student
{
public:
公用的数据和成员函数
protected:
保护的数据和成员函数
private:
私有的数据和成员函数
};//摘自百度百科
这是定义类:Student A = new Student();//分配了存储空间
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
damn21cn
2009-08-05 · TA获得超过2658个赞
知道小有建树答主
回答量:1800
采纳率:50%
帮助的人:683万
展开全部
如楼上说,与函数的定义与声明作用相同。

“声明”是不写实际代码,只写一个调用形式。
这样可以让编译器知道如何分配内存、调用时保留多少空间在堆栈……。
还有其他很实际的用途,例如在团队合作时,要调用的函数往往未真正完成;又或者需要放在另一个库文件(dll这类)。

“定义”没什么好说了,是完整的代码。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
扈怀炜4h
2015-07-27 · TA获得超过6039个赞
知道大有可为答主
回答量:6907
采纳率:67%
帮助的人:1352万
展开全部
定义类是声明并实现类中的所有的方法,定义类中的所有field
声明类是在程序中先声明有这样一个类,但并不实现。
一般在面对像的开发中,如果一个类中要用到另一个还未定义的类,那么需要先声明类。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(5)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式