|  | | 
 
| 
           
             | 
                 
                   | Тема |  C++Builder  AnsiString   |  |  | Автор | ist (непознат
) |  | Публикувано | 14.06.01 23:41 |  |  | 
           
 Може ли да се използва заделяне на памет за структура, чиито елементи са от тип AnsiString чрез функцията new?
 
 Например:
 
 struct Elements
 {
 AnsiString Head;
 AnsiString Body;
 };
 
 struct Node
 {
 Elements Data;
 Node *Next;
 };
 
 Node *root;
 Node *P;
 
 P = new Node;
 ...
 
 delete P;
 
 Как компилатора заделя памет за елемент от структурата след като не знае предварително големината на един неин елемент?
 
 
 
 
 |  |  |  
             | 
                 
                   | Тема |  Re: C++Builder  AnsiString  [re: ist] |  |  | Автор | Balam (непознат
) |  | Публикувано | 15.06.01 03:26 |  |  | 
           
 Abe ne sum polzval C++ Builder, no mi se struva che AnsiString e obiknoven clas za manipulacia na stringove (da rechem kato CString na MFC). V tozi sluchai samia klas ne si meni razmera v zavisimost ot tova kakuv string si mu dal. Za sudurzanieto AnsiString si zadelia sobstvena pament.
 
 
 
 
 |  |  |  
             | 
                 
                   | Тема |  Re: C++Builder  AnsiString
[re: ist] |  |  | Автор | Ц++ (Нерегистриран) |  | Публикувано | 15.06.01 19:02 |  |  | 
           
 AnsiString е клас който сам си заделя динамично памет за стринг-а. така че не е фиксиран. но това което си написал може да се използва без проблеми. ако на деден етап ти трябва char* указател към низа използвай AnsiString::c_str()
 
 
 
 
 |  |  |  
             | 
                 
                   | Тема |  Re: C++Builder  AnsiString  [re: Ц++] |  |  | Автор | Ц++ (Нерегистриран) |  | Публикувано | 15.06.01 19:03 |  |  | 
           
 всъшност ако ти трябва структура с фиксиран размер не е това начина. ами тогава използвай char alabala[ size ];
 
 
 
 
 |  |  |  
             | 
                 
                   | Тема |  Re: C++Builder  AnsiString  [re: ist] |  |  | Автор | B.Oiler (Нерегистриран) |  | Публикувано | 15.06.01 20:21 |  |  | 
           
 Zashto mislish, che compilatora ne znae razmera na AnsiString?
 Tova bi bilo vazmozhno, samo ako ne si go declariral predvaritelno.
 
 PS: Kakvi sa tezi new Node, delete P? Tozi C Builder ne poddarzha li STL?
 
 
 
 
 |  |  |  
             | 
                 
                   | Тема |  Re: C++Builder  AnsiString  [re: B.Oiler] |  |  | Автор | ist (Нерегистриран) |  | Публикувано | 15.06.01 20:51 |  |  | 
           
 За какво по-точно говориш имам в предвид STL?
 
 
 
 
 |  |  |  
             | 
                 
                   | Тема |  Re: C++Builder  AnsiString  [re: ist] |  |  | Автор | B.Oiler (Нерегистриран) |  | Публикувано | 15.06.01 21:49 |  |  | 
           
 STL = Standard Template Library
 Vizh http://www.sgi.com/tech/stl/
 Tova e biblioteka za realizirane na osnovni structuri danni, napr. vector, spisak i t.n., kakto i algoritmi varhu tqh. Bibliotekata e utvardena kato ANSI/ISO standart i se predpolaga, che vsichki C++ compilatori q poddarzhat. Ne znam za C Buildera, no bi trqbvalo i toi da q instalira. Tazi biblioteka e tolkova dobre zamislena i optimizirana, che nqma slisal da pishesh sobstven cod za rabota sas strukturi danni, osven ako te ne se poddarzhat ot STL.
 
 
 
 
 |  |  |  |  
 
 |   | 
 |