Cygwin + MinGW + GCC 相談室 Part 8 (988レス)
上下前次1-新
抽出解除 必死チェッカー(本家) (べ) レス栞 あぼーん
202(3): 2016/07/02(土)17:08 ID:QBTa/uvw(1/2) AAS
 過疎っているけど・・・質問させてください 
 Windows10Pro 64bit上にMSYS2をインストールしてMINGW64を主にシェルとして使っているのだけど 
 Linux上では正常に動いてMINGW64上ではSegmentation Faultになるプログラムが有るのです 
 どうもグローバル変数の宣言がうまく処理できていないようなんだけどコンパイルオプションとかで対処できないでしょうか? 
  
 ソースをコピペします 
 main.cpp------------------------------------------- 
 #include "class2.h" 
  
 int main( int argc, char *argv[] ) { 
  //Class2 object2; 
  return 0; 
 } 
 class1.h -------------------------------------------- 
 #include <string> 
 #include <map> 
 class Class1 { 
  std::string type; 
  static std::map<std::string, Class1 *> map; 
 public: 
  Class1(std::string s); 
  ~Class1(); 
 }; 
 class1.cpp ------------------------------------------- 
 #include <iostream> 
 #include "class1.h" 
 Class1::Class1(std::string s) : type(s) { 
  std::cout << "Class1::Class1 type=" << type << std::endl; 
  map[type] = this; 
 } 
 std::map<std::string, Class1 *> Class1::map; 
 Class1::~Class1() {} 
203: 202 2016/07/02(土)17:11 ID:QBTa/uvw(2/2) AAS
 続き・・・ 
 class2.h ------------------------------------------ 
 class Class2 { 
 public: 
   Class2(); 
 }; 
  
 class2.cpp --------------------------------------- 
 #include <iostream> 
 #include "class2.h" 
  
 //std::map<std::string, Class1 *> Class1::map; 
 #include "class1.h" 
 Class1 object1("XXX"); 
  
 Class2::Class2() { 
  std::cout << "Class2::Class2 " << std::endl; 
 } 
  
 以上です 
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 1.247s*