腾讯云
开发者社区
文档
建议反馈
控制台
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
登录/注册
精选内容/技术社群/优惠产品,
尽在小程序
立即前往
文章
问答
(9999+)
视频
沙龙
1
回答
“间接声明另一个名称
空间
中
的
命名
空间
”是什么意思?
c++
、
c++14
basic.link C++14标准第4段: 上面的“间接声明另一个名称
空间
中
浏览 3
提问于2015-10-27
得票数 10
回答已采纳
1
回答
C++模块会使未
命名
的
名称
空间
变得多余吗?
c++
、
namespaces
、
c++-modules
、
unnamed-namespace
在模块中未导出
的
任何符号都
具有
模块
内部
链接
。而未
命名
命名
空间
提供了一种机制,使未
命名
命名
空间
中
的
定义
具有
文件
内部
链接
。这是否意味着当模块成为C++社区
的
常见实践时,未
命名
的
名称
空间
将在未来变得无用?
浏览 3
提问于2021-03-31
得票数 3
1
回答
为什么这些
具有
外部
链接
的
名称不表示相同
的
实体呢?
c++
、
language-lawyer
、
linkage
N 被赋予外部
链接
,因为N4567
的
3.5 basic.link第4段指出
具有
命名
空间
范围(3.3.6)
的<
浏览 3
提问于2016-02-13
得票数 1
回答已采纳
1
回答
具有
内部
链接
的
命名
命名
空间
c++
、
linkage
@PasserBy发现我
的
问题是重复
的
。这个问题可以结束了,谢谢。 如何获取
具有
内部
链接
的
命名
命名
空间
?也就是说,如何让
命名
空间
对外部源文件不可见?我想要
的
是: static namespace N { int bar() {return 20;} } 然而,不幸
的
是,C++不能识别static
浏览 14
提问于2019-03-15
得票数 1
回答已采纳
3
回答
为什么要将类型放在未
命名
的
命名
空间
中?
c++
、
unnamed-namespace
我理解如何使用未
命名
的
命名
空间
来使函数和变量
具有
内部
链接
。头文件中不使用未
命名
的
命名
空间
;只有源文件。在源文件中声明
的
类型不能在外部使用。那么,在未
命名
的
命名
空间
中放置类型有什么用处呢?请参阅这些
链接
,其中提到类型可以放在未
命名
的
命名
<em
浏览 4
提问于2015-08-19
得票数 10
回答已采纳
2
回答
未
命名
命名
空间
中名称
的
外部
链接
c++
、
c++14
、
unnamed-namespace
根据C++标准第3.5/4条: 尽管未
命名
名称
空间
中
的
实体可能
具有
外部
链接
,但它们实际上是由其翻译单元特有的名称限定
的
,因此从任何其他翻译单元中都看不到。如何
浏览 3
提问于2016-02-09
得票数 7
回答已采纳
3
回答
在
具有
外部
链接
的
匿名
命名
空间
中声明
的
实体示例
c++
、
c++11
、
namespaces
、
language-lawyer
、
linkage
鉴于下面第3.5/4节和第7.3.1.1/1号编注94中
的
声明(重点是我),我希望有一个在
具有
外部
链接
的
未
命名
命名
空间
中声明
的
实体
的
一个例子。第3.5/4号 一个未
命名
的
名称
空间
或在未
命名
名称
空间
中直接或间接声明
的
名称
空间
具有
内部
链接<
浏览 9
提问于2014-09-24
得票数 7
回答已采纳
1
回答
ODR与
内部
链接
c++
、
c++11
、
linkage
、
one-definition-rule
假设在一个程序中有两个编译单元,每个编译单元都声明一个
具有
相同签名但实现不同
的
非内联函数,如namespace internal { 在
命名
空间
范围声明
的
下列任何名称都
具有
外部<e
浏览 0
提问于2019-03-20
得票数 5
回答已采纳
1
回答
未
命名
命名
空间
中
的
非静态未
命名
联合
c++
、
language-lawyer
namespace { int a; };说 但是,Clang拒绝在嵌套在未
命名
名称
空间
中
的
命名
命名
空间
中编译非静态匿名联合。该规则是否可以改为
浏览 1
提问于2021-11-29
得票数 9
1
回答
C++中
的
静态全局和匿名
命名
空间
c++
、
language-design
、
history
、
namespace
、
static
为什么在引入外部
链接
时,C++会区分静态全局(
内部
链接
)和未
命名
命名
空间
中
的
符号(外部
链接
,但无论如何也无法从外部引用它)?对于加分,如果没有充分
的
理由让他们与众不同,是否有要求使他们成为等价物?当C++引入名称
空间
浏览 0
提问于2015-09-12
得票数 13
1
回答
试图理解第3.3.1/4节
c++
、
c++11
、
language-lawyer
、
linkage
显然,在§3.3.1/4中,这个片段没有编译,因为它在全局
命名
空间
中包含两个同名为A
的
不同实体,extern int A;和static int A = 101;。但这与下面我在@dyp评论中提到
的
第3.5/4段不一致。 未
命名
名称
空间
或在未
命名
命名
空间
中直接或间接声明
的
命名
空间
具有
内部
<em
浏览 2
提问于2014-09-28
得票数 11
3
回答
常规
命名
空间
内匿名
命名
空间
内
的
符号
的
链接
c++
、
namespaces
、
anonymous
、
linkage
在C++中,把一个函数或一个变量放在一个匿名名称
空间
中,使其
链接
成为
内部
的
,也就是说,在文件级上声明它为static是相同
的
,但这是惯用
的
C++。 普通
命名
空间
中
的
匿名
命名
空间
又如何呢?它还能保证
内部
链接
吗?
浏览 1
提问于2010-11-15
得票数 16
回答已采纳
2
回答
静态上未
命名
命名
空间
的
使用
c++
、
static
、
namespaces
我是否可以假设在未
命名
的
命名
空间
中声明
的
对象相当于staticFWIK,在这两种情况下,x将
具有
静态存储持续时间和
内部
链接
那么,声明为static
的
对象
的
所有规则是否适用于未
命名
命名
空间
中
的
对象?,
浏览 0
提问于2011-11-23
得票数 8
回答已采纳
1
回答
为什么匿名
命名
空间
内
的
函数/对象有外部
链接
?
c++
为什么在匿名
命名
空间
中定义
的
符号(函数和变量)不像static关键字那样
具有
内部
链接
?如果函数在外部不可见/不可访问,那么有外部
链接
的
原因是什么?
浏览 2
提问于2012-05-31
得票数 16
回答已采纳
1
回答
外部
链接
的
缺点
c++
具有
外部
链接
的
符号是否有任何缺点(除了全局名称
空间
混乱/冲突)?例如,我会想,如果我有一个从未调用过
的
函数,如果它有
内部
链接
,编译器可以直接丢弃它,但如果它是外部
的
,编译器必须把代码留在里面,因为以后可能会有人
链接
到它。这是正确
的
吗?还有没有其他缺点?我之所以问这个问题,是因为我知道推荐使用未
命名
的
命名
空间
而不是static关键字,但由
浏览 3
提问于2012-05-17
得票数 2
回答已采纳
1
回答
模板函数应该是静态
的
吗?
c++
我经常将源文件中
的
实用程序函数声明为static,以便在
内部
链接
它们。现在,我有了一个
具有
大量模板函数
的
头文件(在
命名
的
命名
空间
中)。我是否应该使它们也是静态
的
,以避免
链接
错误,或者模板函数
的
行为是否有所不同?
浏览 2
提问于2015-06-16
得票数 3
回答已采纳
1
回答
匿名
命名
空间
对方法、成员变量和特殊成员函数(如构造函数)
的
影响
c++
、
class
、
linkage
如果我在匿名
命名
空间
中定义类,这对它
的
方法、成员变量和特殊
的
成员函数意味着什么?那么内联成员变量呢?
浏览 72
提问于2020-08-01
得票数 0
1
回答
C++
链接
器抱怨char*
的
多个定义,而不是std::string
c++
、
namespaces
、
constants
、
linker-errors
、
linkage
在一个大项目中,我有一个.h文件,它在
命名
空间
中定义了许多常量。引入constants *常量会导致
链接
器错误,抱怨多个定义。ex.h" { return 0;编译与
链接
NAME2'collect2: ld returned 1 exit status 如果NAM
浏览 4
提问于2015-02-27
得票数 4
回答已采纳
1
回答
类名
链接
c++
、
class
、
linkage
$3.5 -“此外,如果类
的
名称
具有
外部
链接
,则成员函数、静态数据成员、类或类范围
的
枚举都
具有
外部
链接
。关于'if the name of the class has external linkage'意味着什么
的
任何输入 与名称
空间
范围中定义
的
类相比,“本地类”(可能没有任何
链接
)
的
提示是否与用静态说明符定义
的
命名
空间
作用域
浏览 1
提问于2010-10-26
得票数 5
回答已采纳
2
回答
作为模板参数
的
内部
类型
c++
、
templates
ISO 98/03标准(第14.3.1节)似乎禁止使用
具有
内部
链接
的
类型作为模板参数。(请参见下面的示例。)C++11标准不支持。G++ -使用旧
的
标准-是允许
的
。
浏览 4
提问于2011-11-04
得票数 6
回答已采纳
点击加载更多
扫码
添加站长 进交流群
领取专属
10元无门槛券
手把手带您无忧上云
相关
资讯
Python类的命名空间与组合
Python基础教程 类的命名空间
IBM为Linux 内核提出新的命名空间机制
Python干货:命名空间和作用域的基础知识整合
第2辑-python中命名空间与作用域的解读
热门
标签
更多标签
云服务器
即时通信 IM
ICP备案
对象存储
实时音视频
活动推荐
运营活动
广告
关闭
领券