鱼C论坛

 找回密码
 立即注册
查看: 935|回复: 4

[已解决]说明符问题

[复制链接]
发表于 2020-7-29 14:36:09 | 显示全部楼层 |阅读模式
5鱼币
记得书上说,在同一个声明中不能使用多个说明符(thread_local除外)。
C++ 里,如果在全局变量声明里加入 const 限定符,默认情况下链接性为内部,
所以,const = static const (也就是说,static 可加可不加)



但是,const 运算符前面可以加上另一个说明符,如 extern ,
extern const int c = 0;
那么,根据 const = static const
extern const = extern static const;

但是这不行,

虽然这没有意义,但为什么不可以使用 extern static 呢?


最佳答案
2020-7-29 14:36:10
livcui 发表于 2020-7-29 19:42
static 确实只能链接内部,但直接加 const 链接性也为内部,如果显式显示出来应该是 static const
并且  ...


const 默认是 static,但不一定是 static。
如果声明了extern,那么他就是 extern 的。

注意一下默认和相等的区别。

最佳答案

查看完整内容

const 默认是 static,但不一定是 static。 如果声明了extern,那么他就是 extern 的。[hr] 注意一下默认和相等的区别。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-7-29 14:36:10 | 显示全部楼层    本楼为最佳答案   
livcui 发表于 2020-7-29 19:42
static 确实只能链接内部,但直接加 const 链接性也为内部,如果显式显示出来应该是 static const
并且  ...


const 默认是 static,但不一定是 static。
如果声明了extern,那么他就是 extern 的。

注意一下默认和相等的区别。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2020-7-29 18:42:06 | 显示全部楼层
别沉
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-7-29 18:54:25 | 显示全部楼层
static 连接内部,extern 链接外部,所以到底是内部还是外部?
所以不能一起用。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2020-7-29 19:42:05 | 显示全部楼层
永恒的蓝色梦想 发表于 2020-7-29 18:54
static 连接内部,extern 链接外部,所以到底是内部还是外部?
所以不能一起用。

static 确实只能链接内部,但直接加 const 链接性也为内部,如果显式显示出来应该是 static const
并且 extern const 是可行的,所以我想等于 extern static const
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-1-13 10:11

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表