【发布时间】:2014-07-08 22:02:58
【问题描述】:
我的 C++ 编译器表现得很奇怪。
我的向量是全局定义的:
vector<int> values;
这不会导致任何错误:
void locate( int r, int s, bool newCheck, int from = 0 ){
static int A = 255;
static int U = 1;
static int D = 2;
static int R = 3;
static int L = 4;
values.push_back(0);
kocka *temp;
*temp = pole[r][s];
values.push_back(1);
.........................
但是,这会导致错误 Segmentation Fault:
void locate( int r, int s, bool newCheck, int from = 0 ){
static int A = 255;
static int U = 1;
static int D = 2;
static int R = 3;
static int L = 4;
//values.push_back(0);
kocka *temp;
*temp = pole[r][s];
values.push_back(1);
...........................
用 g++ -O2 -std=c++11 编译 你知道为什么它会以这种奇怪的方式表现吗?谢谢
【问题讨论】:
-
我的 C++ 编译器的行为很奇怪。 - 这应该是你最不应该解决的问题。
标签: c++ c++11 vector segmentation-fault push-back