gpt4 book ai didi

c++ - 定义命名空间的变体和 __visibility__ 的含义

转载 作者:搜寻专家 更新时间:2023-10-31 00:20:19 25 4
gpt4 key购买 nike

今天,同时看到 <iostream>预处理代码(g++ 4.4.1),我看到一行在语法上对我来说很不寻常。

namespace std __attribute__ ((__visibility__ ("default"))) {
// ...
}

我对该行有疑问:

  1. 什么是 __attribute__这是什么在 std 之后做? (新语法!)
  2. 双括号是怎么来的((
    ... ))
    到位,它是一种新语法吗?
  3. 什么是 __visibility__是什么它设置为 "default"

最佳答案

__attribute__ 是一个 gcc-specific language extension.它允许您以标准 C++ 语言不直接支持的方式更改函数、命名空间或其他实体的声明。

C++0x 添加了对属性的语言支持,尽管语法不同并且大多数属性仍然是特定于实现的。

关于c++ - 定义命名空间的变体和 __visibility__ 的含义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6260421/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com