Yo uso C y struct
s donde una estructura puede tener miembros pero no funciones. Supongamos por simplicidad que quiero crear una estructura para las cadenas que nombre str
y quiero poder hacer str.replace(int i, char c)
dónde i
está el índice de la cadena y c
es el carácter para reemplazar el carácter en la posición i
. ¿Esto nunca sería posible ya que las estructuras no pueden tener funciones o todavía hay alguna forma en que podemos implementar este comportamiento e imitar que una estructura podría tener una función (simple) que en realidad solo es la estructura que se copia a una nueva estructura y actualiza su campos, que podría hacer?
Entonces, replace
podría ser un tercer miembro de la estructura que apunta a una nueva estructura que se actualiza cuando se accede a ella o similar. ¿Se podría hacer? ¿O hay algo incorporado o alguna teoría o paradigma que impide mi intención?
El trasfondo es que estoy escribiendo código C y me encuentro reinventando funciones que sé que son bibliotecas integradas en lenguajes OOP y que OOP sería una buena manera de manipular cadenas y comandos.
str.replace(&str, i, c)
todos modos. C ++ automatiza el paso del this
puntero, por supuesto.