gpt4 book ai didi

c++ - 外部变量在 visual studio 中重置自身

转载 作者:太空宇宙 更新时间:2023-11-03 10:39:10 25 4
gpt4 key购买 nike

<分区>

考虑以下示例:

//头部 props.h

#pragma once
#include <vector>
extern std::vector<int> prop;
struct addToVec
{
addToVec(int a)
{
prop.push_back(a);
}
};

//cpp文件props.cpp

#include "props.h"
std::vector<int> prop;
addToVec b(10);

// main.cpp

#include <iostream>
#include "props.h"
addToVec a2(14);
int main(int argc, char** argv)
{
std::cout << prop.size();
return 0;
}

预期输出为2,但实际输出为1。

这给出了 gcc 编译器(不确定版本)的预期结果 (2)。我正在使用 visual studio professional 2013 version 12 update 5。这是错误还是预期结果?

元素添加到 vector 的顺序与我无关。我唯一担心的是只有一个元素被添加到 vector 中(而不是 2 个)。

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com