Code Bye

疑问:GCC编译器中关于long long的处理

 
typedef long long keyType;
std::map< keyType, valueType* >    mMap;

在VS下编译使用无问题,但在IOS下用GCC编译使用后出现错误,经最终查找发现long long作为map的key引起的问题
long long好像不是标准C++的类型,但是这个错误具体在什么地方,为什么会引起内存分配和释放之间的错误?
请高人解惑。


20分
不会是这个原因,可能是你文件后缀不对吧。既然是c++,就应该是.mm??
引用 1 楼 ybh37 的回复:

不会是这个原因,可能是你文件后缀不对吧。既然是c++,就应该是.mm??

这个问题的原因还没有找到,但将long long 改成unsigned int后没有就正常了。不排除其他问题引起,但的确没有找到。
至于long long类型是否可以在IOS下安全使用,以及是否可以在IOS && std::map的key,不知道有没有注意事项。


20分
long long你需要去工程的设置里设置相关选项吧,有这个选项的。

CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明疑问:GCC编译器中关于long long的处理