:: without a namespace(:: 没有命名空间)
问题描述
考虑以下代码行:
::CGContextRef cgContext = cocoa::createCgBitmapContext( surface );
为什么 在 :: 之前没有指定命名空间?这是否意味着它使用与您所在的类相同的命名空间?
How come there's no namespace specified before :: ? Does that mean it's using the same namespace as the class you're in?
推荐答案
::
in ::CGContextRef
表示全局命名空间,即CGContextRef
在全局命名空间中定义.
::
in ::CGContextRef
means global namespace, which means CGContextRef
is defined in the global namespace.
int x = 10;
namespace test
{
int x = 100;
void f()
{
std::cout << x << std::endl; //prints 100
std::cout << ::x << std::endl; //prints 10
}
}
在这里查看完整的演示:http://www.ideone.com/LM8uo
See complete demo here : http://www.ideone.com/LM8uo
这篇关于:: 没有命名空间的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!