(Componente) Repositósio de String similar ao TStrings

Delphi

20/05/2009

Oi gente... Estou no desenvolvimento de um componente (pessoal) que guarde String como um repositório.
Tentando representar:
Indice    |    String
----------|----------
ALERTA    | Cuidado, é perigoso
AVISO     | Tome mais cuidado...


O tipo TString armazena a String e procuramos pelo indice que é un integer. Correto!?

Pois bem... no caso o componente mudaria o indice para uma string, possibilitando uma melhor personalização. Quando eu for mandar uma mensagem de erro padrão que eu vá escrever erla pelo menos umas 8 vezes... eu adiciono esta mensagem no repositório e so procuro pelo indice (como no exemplo acima:) ´ALERTA´.

Um amigo meu me falou para estudar HashTable.
Gostaria de sugestões do que estudar para a implementação. É isso mesmo? ´HashTable´?

Diz ele que tem tipos de Map que tem acesso mais rapido mas gasta mais memória, e outro que o acesso a info mais devagar, mas gasta menos memória.

O que me aconselham estudar!?
Consegui tal informação para estudo:
[url]http://www.benya.com/code/collections/hashtable.html[/url]


.lg.

.lg.

Curtidas 0

Respostas

Fabriciocolombo

Fabriciocolombo

20/05/2009

Mais o TStringList já faz o que vc está querendo, basta vc utilizar assim.

  FList.Values[´ALERTA´] := ´Mensagem de Alerta´;
  FList.Values[´ERRO´]    := ´Mensagem de Erro´;
  FList.Values[´AVISO´]  := ´Mensagem de Aviso´;


e para localizar, vc utiliza IndexOfName

var
  index: Integer;
begin
  index := FList.IndexOfName(´ERRO´);
  if index >= 0 then
    ShowMessage(FList.Values[´ERRO´]);



GOSTEI 0
.lg.

.lg.

20/05/2009

FabricioColombo,
É pessoas como você que salva ideias como a minha de serem colocadas em prática. Eu teria feito mo código só pra fazer esse componente.

Muito Obrigado.
Salvou mémoria pra mim. xD

Att,
.lg.


GOSTEI 0
POSTAR