36 lines
1.0 KiB
C++
36 lines
1.0 KiB
C++
#pragma once
|
|
#ifndef StrArray_h
|
|
#define StrArray_H
|
|
|
|
#include "base_head.h"
|
|
class UTILES_EXPORT StrArray
|
|
{
|
|
//variables------------------------------
|
|
int incremento_char;
|
|
int incremento_str;
|
|
public:
|
|
char *str;
|
|
int n_str;//numero de chars
|
|
int m_str;//memoria reser
|
|
int (*ind)[];
|
|
int n_i;//numero de str
|
|
int m_i;//memoria reser
|
|
//constructor----------------------------
|
|
public:
|
|
StrArray(void);
|
|
~StrArray(void);
|
|
//funciones------------------------------
|
|
char* get(int i);//da string i
|
|
void add(char*c);//mete str
|
|
void add(char*c, int ncharReser);//mete str y reserva en memoria un minimo de ncharReser;
|
|
void add( StrArray* st );//mete un array entero de caracteres
|
|
void borra(int i);//borra el elemento iesimo
|
|
int size();//da numero de str
|
|
void borra();//borra todo
|
|
void compacta();//reduce al minimo la memoria necesaria para comtener la informacion
|
|
StrArray* filtra(StrArray*buf, char *filter);
|
|
//funciones aux-------------------------
|
|
private:
|
|
void cuida_memoria(int n,int ni=1);//asegura tener memoria para un str mas
|
|
};
|
|
#endif |