【问题标题】:Is 'using' keyword a preprocesor directive?“使用”关键字是预处理器指令吗?
【发布时间】:2018-01-12 06:31:39
【问题描述】:

using 指令是预处理器指令吗?

如果没有:除了预处理器和 using 指令,C++ 中还有其他指令吗?

【问题讨论】:

  • 你为什么不在语言定义中查找呢?最新的 ISO 草案始终在线(只需 google“C++ ISO 草案”)。完成后,发布您自己的答案并兑现两次。
  • ? ... ? ... ? ... ? 每个问题一个问题。
  • 提示:预处理器是一个美化的文本替换系统,对 C++ 语法或语义一无所知。
  • 对于所有投反对票的人,我是 OOP 的初学者,试图自学范式。有很多相似的词,它们的意思略有不同,这有点令人困惑,所以试着理解一下。
  • 我已经缩小了这个问题的范围,希望足以重新打开,但不要过多地破坏它。

标签: c++ directive preprocessor-directive


【解决方案1】:

为什么你认为关键字是预处理指令?它们是两种截然不同的东西。

为了清楚起见,预处理器指令always 以散列开头,并且必须至少占据一整行。关键字是一个“单词”(可能包含下划线)。所以它们没有共性。

你的答案:

指令using 是预处理器指令吗?

没有。它是一个指令,但不是 预处理器 指令

是由预处理器还是编译器处理?

它由编译器处理,作为名称查找的“指令”。

另外,什么是指令?

您可以放心地相信,任何不能编译成实际可执行代码的东西都是指令性的。这是一个非常广泛的问题,这里不适合完整的答案。

您可能想look up "directive" in a dictionary

“使用”是指令还是关键字?

两者。

我是否理解所有指令都不是“预处理器指令”但所有预处理器指令都是指令?

可能是对的。这是有道理的。

【讨论】:

  • 谢谢。我的困惑是,当他们说 using 指令是预处理器指令还是只是指令时?即“指令”这个词与“预处理器指令”这个词不同。
  • 这正是我的困惑。您说指令以散列开头,但该指令是预处理器指令。但是 using 指令不是预处理器指令 ryt?
  • @GRANZER 我想我误解了“指令”。查看新答案。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-07-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多