c – std :: map实现在linux和windows之间有所不同
发布时间:2020-05-23 13:28:44 所属栏目:Linux 来源:互联网
导读:在linux和Visual Studio 2015中编译后,以下代码的行为有所不同.#include map #include iostream using namespace std; int main(void) { mapint, int map1; int keyCount = 2;
|
在linux和Visual Studio 2015中编译后,以下代码的行为有所不同.
Visual Studio中的结果:
在linux中使用g -std = c 11 -Wall -pedantic编译的结果
我有两个问题: >据我了解c,VS实现是正确的.
然后它在两个平台上都像Visual Studio一样. 2.我可以使用哪些Visual Studio编译器设置来确保VS的编译方式与Linux相同?
扩展到
C不保证是否首先调用operator []或size,因为它们都是赋值表达式的操作数.两个编译器都是正确的. 如果您期望一种行为或另一种行为,则应将表达式拆分为两个语句. (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
