Así que estoy haciendo un control de edición personalizado. Para hacer un seguimiento del contenido del control de edición, estoy usando una matriz de caracteres dinámicamente asignada.¿Cuál es la mejor manera de implementar un búfer para un control de edición de texto?
- Ahora, sé que tengo que insertar en el medio de la matriz en ciertas situaciones, tales como cuando el usuario hace clic en un punto particular. Entonces, estaba pensando, en lugar de una matriz de caracteres, puedo usar std :: vector, así que podría usar la función .insert, y también no tendría que importar mucho sobre la administración de memoria.
- También estaba pensando en almacenar directamente el flujo de entrada en una matriz/vector de palabras (sin mantener un búfer continuo), ya que mi propósito con este es implementar resaltado de sintaxis.
¿Cuál sería un mejor enfoque para hacer las cosas? ¿Y por qué?
¡Esa es una explicación muy agradable, gracias! Sí, el texto se dividirá en líneas lógicas, y voy con desplazamiento horizontal. – devjeetroy
Los editores que usan un búfer contiguo sufren terriblemente al editar archivos masivos (como un archivo de registro). Para los archivos fuente está bien, pero la gente inevitablemente quiere cargar _todo_ en su editor. Por lo tanto, se requiere algún tipo de segmentación. –