c – 我可以将iostream头文件包含到自定义命名空间中吗?
发布时间:2020-12-16 10:26:31 所属栏目:百科 来源:网络整理
导读:namespace A{ #include iostream};int main(){ A::std::cout "nSample"; return 0;} 解决方法 简答:不. 答案很长:嗯,不是真的.不过你可以假装它.您可以在外部声明它并在命名空间内使用using语句,如下所示: #include iostreamnamespace A{ using std::cou
namespace A { #include <iostream> }; int main(){ A::std::cout << "nSample"; return 0; } 解决方法
简答:不.
答案很长:嗯,不是真的.不过你可以假装它.您可以在外部声明它并在命名空间内使用using语句,如下所示: #include <iostream> namespace A { using std::cout; }; int main(){ A::cout << "nSample"; system("PAUSE"); return 0; } 您无法本地化库,因为即使它在A中具有访问权限,也无法在标准命名空间中进行访问. 另外,“另一个问题是命名空间内的限定名称是A :: std :: cout,但该库不包含使用外部命名空间限定的名称.”谢谢Jonathon Leffler. 如果问题是你不想让其他人知道你的所有代码可以做什么,你可以拥有自己的cpp文件来包含iostream,并在那里定义命名空间.然后你只需将它包含在main(或其他)中,让程序员知道他能做什么,不能做什么. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |