[英]Where in the C++ Standard can I find support for invoking a function in global scope?
[英]In c++, `expressions` are allowed in global scope only to initialize global objects. Where can I find this in the Standard?
下面的注釋表達式不能編譯,因為它在全局范圍內。 但是在C ++標准的哪里可以找到與此限制有關的內容? 我記得,在全局范圍內僅允許表達式初始化全局對象。 我已經研究了第5章表達式 ,但無濟於事。
#include <iostream>
//std::cout.setf(std::ios_base::hex, std::ios_base::basefield);
int main()
{
std::cout.setf(std::ios_base::hex, std::ios_base::basefield);
}
我相信一切都將取決於3.5程序和鏈接 :
1)一個程序由一個或多個鏈接在一起的翻譯單元(第2條)組成。 翻譯單元由一系列聲明組成。
翻譯單位:
聲明順序選擇
在該語法說明之后,您將找到一個聲明序列中允許的內容以及每個聲明中允許的內容。 可以看出,在翻譯單位級別不允許使用常規語句 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.