Bom dia galera,
To numa amuação mor hj, pq preciso fazer a redeclaração de um atributo público de uma classe.
Vamos supor que tenhamos a seguinte classe.
[codebox]Class example
public arr()
end class[/codebox]
eu gostaria que esse array fosse dinamico, porém não consigo redeclará-lo.
Observem:
[codebox]dim ex: set ex = new example
redim preserve ex.arr(x)[/codebox]
o código dá o seguinte erro.
Expected '('
bem na parte em que está o ponto da expressão "ex.array"
alguém me salva?
obrigado.
Redeclarar Arrays Quando São Atributos Públicos
Started By Aimberê Rocha Mendonça, 07/04/2009, 11:13
2 replies to this topic
#1
Posted 07/04/2009, 11:13
Aimberê Rocha Mendonça
IT Analyst and Developer
IT Analyst and Developer
#3
Posted 14/04/2009, 08:50
Sim, isso é ASP, e inclusive, conseguir arrumar o erro.
Quando precisei fazer essa declaração achei estranho o fato de eu querer redeclarar um atributo definido dentro da classe, mesmo ele sendo público. Estava ferindo as propriedades de OOP. E é muito estranho eu querer fazer o
de fato aqui, estávamos tratando o array (nesse caso), como algo externo a classe, e não como uma interface entre o objeto e o ator, que é a função dos atributos públicos, ser uma interface. Mas ainda assim eu precisava dessa porcaria, gostaria que meu array fosse dinâmico, e foi quando eu tive a idéia de passar um array inteiro por referência, ou seja em um dos meus métodos, criava outro array e setava seu endereço de memória para array, fazendo com que o array, se tornasse uma referencia do outro, como um ponteiro, na linguagem C. Observem:
No meu código, não era bem assim, pois estava trabalhando em camadas, portanto imaginemos que arr é o retorno de uma função.
Abrass.
Quando precisei fazer essa declaração achei estranho o fato de eu querer redeclarar um atributo definido dentro da classe, mesmo ele sendo público. Estava ferindo as propriedades de OOP. E é muito estranho eu querer fazer o
Redim Preserve Classe.array(x)
de fato aqui, estávamos tratando o array (nesse caso), como algo externo a classe, e não como uma interface entre o objeto e o ator, que é a função dos atributos públicos, ser uma interface. Mas ainda assim eu precisava dessa porcaria, gostaria que meu array fosse dinâmico, e foi quando eu tive a idéia de passar um array inteiro por referência, ou seja em um dos meus métodos, criava outro array e setava seu endereço de memória para array, fazendo com que o array, se tornasse uma referencia do outro, como um ponteiro, na linguagem C. Observem:
Public Function Method() dim arr = Array(1,2,3,4,5,6) Classe.array = arr end Function
No meu código, não era bem assim, pois estava trabalhando em camadas, portanto imaginemos que arr é o retorno de uma função.
Abrass.
Aimberê Rocha Mendonça
IT Analyst and Developer
IT Analyst and Developer
0 user(s) are reading this topic
0 membro(s), 0 visitante(s) e 0 membros anônimo(s)