このコード例で "アクセス違反の読み取り場所"が表示される理由を教えていただけますか?そして、どうすればこの問題を解決できますか?このコードで「場所を読み取るアクセス違反」エラーが発生するのはなぜですか?
#include <vector>
using namespace std;
struct StructTest;
struct Struct1;
typedef struct Struct1{
StructTest* test;
} Struct1;
typedef struct StructTest{
vector<Struct1*> test123;
} StructTest;
static StructTest* abc;
int test(){
abc = (StructTest*) malloc(sizeof(StructTest));;
Struct1* a1 = (Struct1*) malloc(sizeof(Struct1));
a1->test = abc;
abc->test123.push_back(a1);
return 0;
}
int main(){
test();
return 0;
}
エラーの原因は次のうちどれですか? –
+1よく尋ねられる質問([sscce](http://sscce.org)) – Flexo