Objective c 全局和静态全局之间有区别吗?

Objective c 全局和静态全局之间有区别吗?,objective-c,static,global-variables,Objective C,Static,Global Variables,在目标C中(如果这很重要的话),这两种说法之间有区别吗?如果是的话,是什么 报表1: std::map<id, id> foo; std::map foo; 报表2: static std::map<id, id> sFoo; static std::map sFoo; 请注意,这两个变量都是全局变量,将在文件范围的.mm中声明。static,在此上下文中,表示该变量仅在当前文件中可见,但在该文件中的任何位置都可见。因此,否:真正的全局变量将随处可见。static

在目标C中(如果这很重要的话),这两种说法之间有区别吗?如果是的话,是什么

报表1:

std::map<id, id> foo;
std::map foo;
报表2:

static std::map<id, id> sFoo;
static std::map sFoo;

请注意,这两个变量都是全局变量,将在文件范围的.mm中声明。

static
,在此上下文中,表示该变量仅在当前文件中可见,但在该文件中的任何位置都可见。因此,否:真正的全局变量将随处可见。

static
,在此上下文中,表示该变量仅在当前文件中可见,但在该文件中随处可见。所以,不,一个真正的全局变量在任何地方都是可见的。

是C++ + ObjuleC++,而不是Objy-C?这是以前被问过的,例如,注意,在类或函数之外使用<代码>静态< /代码>在C、C++、Objtovi-C中意味着相同的东西(内部链接),ObjultC++。我真的不知道两者之间的区别(ObjcVS Objc++)。Objto-C添加了一个反射式的面向对象运行时,语义类似SimalTalk,C。ObjuleC++将相同的东西添加到C++中。STD: MAP是标准模板库的一部分,一组C++模板,所以你在Objto-C++领域。虽然Objc的特性以压倒多数的方式添加到C,但是C++有很多重叠,所以很多人不必理会C++。例如,他们会使用NSDictionary或NSMapTable来实现您使用std::map所做的事情,其优点是测试平等性而不是身份的内置机制将只起作用。是C++/Objective-C++,而不是Objective-C吗?这是以前提出的问题,例如,注意,在类或函数之外使用<代码>静态<代码>意味着C、C++、Objto-C和Objul-C++中的相同的东西(内部链接)。Objto-C添加了一个反射式面向对象运行时,语义类似SimalTalk,C。ObjuleC++将相同的东西添加到C++中。STD: MAP是标准模板库的一部分,一组C++模板,所以你在Objto-C++领域。虽然Objc的特性以压倒多数的方式添加到C,但是C++有很多重叠,所以很多人不必理会C++。例如,他们会使用NSDictionary或NSMapTable来实现您使用std::map所做的工作,其优点是测试平等性而不是身份的内置机制将只起作用。