关于定义和声明的基础问题

Fshx 2006-08-05 12:24:03
1 . 不能定义对象在头文件中 C++的一次性定义法则规定全局对象在程序中只能定义一次
我想问下 对于把类类型定义在头文件中 当程序的多个文件使用这个class时 #include这个头文件
是不是违反C++的一次性定义法则

2 . namespace sp
{
int a=1;
double b;
}
我把全局名词空间sp包含在sp.h头文件中 在程序中的多个文件使用时 包含进去 ,名词空间中定义的全局变量a和b是不是也违反c++的一次性第一规则



...全文
220 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
langzi8818 2006-08-05
  • 打赏
  • 举报
回复
不错不错
Fshx 2006-08-05
  • 打赏
  • 举报
回复
不好意思 自己刚才把书细细看了下 第2个namespace中 应该把那两个变量声明为const 并初始化就可以了 谢谢上面的几位解答 :)
Fshx 2006-08-05
  • 打赏
  • 举报
回复
在第2个中的namespace中我没有定义为static
cunsh 2006-08-05
  • 打赏
  • 举报
回复
头文件通常只放声明.以及具有内部连接属性的东西. 所以像static变量.static函数这样的定义放到头文件也没事. 内联函数默认也是static的所以也经常要定义到头文件里.
pomelowu 2006-08-05
  • 打赏
  • 举报
回复
1 对象和类不是同一个概念。
2 参考你自己在1中的表述。

64,682

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

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