|
|
|
Forum Guru
      
участник
Last Login: 07.11.2008 19:17
Сообщ.: 63,
Visits: 591
|
|
в среде NET будь то VB NET или C++ есть коллекция ArrayList Пишешь на VB без проблем Dim coll As New ArrayList, w As Book 'экземпляр класса Book For i = 0 To n Dim w As New Служаший(nm(i), i+100) coll.Add(w) next i coll(3).Оклад(); //далее без проблем у любого элемента коллекции вызываешь метод класса //несм на то что это элем коллекции , он автом преобразуется к типу класса На С++ подобное у меня вызывает ряд проблем using namespace System; using namespace System::Collections; // ….. book * b; ArrayList * st; for (int i=0;i<5;i++) { b=new book("title",i+100); st->Add(b); } То компилятор выдаёт ошибку Add' : cannot convert parameter 1 from 'book *' to 'System::Object __gc *' Как то надо видно преобразовать экземпляр класса к System::Object ?
|
|
|
|
|
Supreme Being
      
участник
Last Login: 23.08.2008 19:49
Сообщ.: 1 577,
Visits: 17 092
|
|
Это для NET 2.0 Другого у меня нет под рукой.using namespace System;using namespace System::Collections::Generic;ref class book {public :int a;}; int main(array<System::String ^> ^args){ book^ b = gcnew book();List<book ^>^ st = gcnew List<book ^>();b->a = 555; st->Add(b); Console::WriteLine(st[0]->a); return 0;}
|
|
|
|