С этим я разобрался 

, можно и xml 

но возник вопрос когда этот код находится в теле функции main все ОК.
FileStream^ file = gcnew FileStream("C:\\Documents and Settings\\Covex\\R3.dat", FileMode::Create);
 IFormatter^ formatter = (IFormatter^)gcnew BinaryFormatter();
    array<REW^>^ ROT = gcnew array<REW^>(10);
   int i;
    for(i=0; i != ROT->Length; ++i)
   {
       ROT[i] = gcnew REW(); 
   }
    formatter->Serialize(file, ROT);
    file->Close();
когда выношу в его отдельную функцию
void SafeMe()
{
FileStream^ file = gcnew FileStream("C:\\Documents and Settings\\Covex\\R3.dat", FileMode::Create);
 IFormatter^ formatter = (IFormatter^)gcnew BinaryFormatter();
    array<REWr^>^ ROT = gcnew array<REW^>(10);
   int i;
    for(i=0; i != ROT->Length; ++i)
   {
       ROT[i] = gcnew REW(); 
   }
}
потом ее вызываю из обработчика нажатия кнопки:
private: System::Void button3_Click(System::Object^  sender, System::EventArgs^  e) 
{
extern void SafeMe();
void SafeMe();
 }
 то компилятор ошибок не выдаёт но и фаил не создаётся?!
ПАЧАМУ??? 
