永发信息网

关于C++类的重复定义问题

答案:3  悬赏:80  手机版
解决时间 2021-03-08 15:19
  • 提问者网友:寂寞梧桐
  • 2021-03-08 01:27
我编写了一个程序关于三角形,先是定义了一个点类point.h,又定义了一个三角形类triangle.h。而且在三角形里用了点类,主函数也包含了点类,编译时就重复定义了。我是初学者,求大神!
最佳答案
  • 五星知识达人网友:风格不统一
  • 2021-03-08 01:51
头文件开始 加上
#pragma once
全部回答
  • 1楼网友:怙棘
  • 2021-03-08 04:03
看你编译信息,你有2个文件,text_employee和employee,你这里面有重复定义? 建议你把使用的文件分别对应贴出来,问题肯定是你文件组织有问题,必要的编译开关等等。
  • 2楼网友:患得患失的劫
  • 2021-03-08 03:14
头文件可能被重复include,我们无法防止头文件被重复include,但可以保证头文件的内容不被重复include。需要使用预编译指令和宏,以point.h为例: #ifndef POINT_H // 如果没定义POINT_H  #define POINT_H // 则定义POINT_H class Point { // 则定义class ... ... }; #endif 如果宏POINT_H 没被定义,则定义它并且定义class。当重复include这个头文件的时候,则第一句会检测到POINT_H 被定义了,就跳过class的定义,不会产生重复定义了。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯