| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 20/12/2007 13:16:35
|
jPscoralicK
JavaChild
![[Avatar]](/images/avatar/9b732cc38e40261d900b8008bf9c596e.jpg)
Membro desde: 05/05/2007 09:54:44
Mensagens: 128
Localização: Juiz de Fora, MG
Offline
|
Apesar de o fórum tratar de assuntos relacionados ao Java, sei que muita gente aqui saca de C++. Então, quem puder me ajudar nesta questão, por favor, faça-o!
No meu código há o seguinte método:
Daí, em outra parte do código, criei a seguinte varíavel, que recebe o Vector:
Até aí, tudo beleza. A inteção minha foi copiar os valores obtidos através do retorno do método getPosition, para o Vector vterra.
Mas, posteriormente, tentei fazer a seguinte atribuição, com o intuito de atribuir à variável a o primeiro elemento do Vector vterra:
Contudo, ocorreu o seguinte erro de compilação:
no match for 'operator[]' in 'vterra[0]'
Alguem sabe o que pode estar ocorrendo?
|
João Paulo Scoralick
Ciência da Computação - UFJF/MG
http://anouterview.blogspot.com
http://escape13.blogspot.com
 |
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 20/12/2007 13:31:04
|
thingol
Moderador
Membro desde: 29/07/2004 16:10:13
Mensagens: 17543
Offline
|
Amigo, onde está declarada a classe Vector? A única que conheço é o template vector (em <vector>), que não é a mesma coisa. Um exemplo de utilização:
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 20/12/2007 13:33:08
|
jPscoralicK
JavaChild
![[Avatar]](/images/avatar/9b732cc38e40261d900b8008bf9c596e.jpg)
Membro desde: 05/05/2007 09:54:44
Mensagens: 128
Localização: Juiz de Fora, MG
Offline
|
Sim, é o template Vector !
|
João Paulo Scoralick
Ciência da Computação - UFJF/MG
http://anouterview.blogspot.com
http://escape13.blogspot.com
 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 20/12/2007 13:36:12
|
thingol
Moderador
Membro desde: 29/07/2004 16:10:13
Mensagens: 17543
Offline
|
Hum, então se é um template, deveria ter o "<>", como mostrei no código acima.
Deve ser outra coisa, que você não mostrou para a gente, já que "Vector" != "vector" (acho que a sua quilometragem de C++ é suficiente para lhe dizer isso).
De qualquer maneira, em código C++ é aconselhável sempre usar a STL em vez de outras bibliotecas, já que ela é parte do padrão ISO C++, se não me engano. Mesmo no Microsoft Visual C++ prefiro usar vector<> em vez de CArray (que faz parte do MFC).
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 20/12/2007 13:58:48
|
jPscoralicK
JavaChild
![[Avatar]](/images/avatar/9b732cc38e40261d900b8008bf9c596e.jpg)
Membro desde: 05/05/2007 09:54:44
Mensagens: 128
Localização: Juiz de Fora, MG
Offline
|
Saquei cara. Consegui aqui. Valeu!
|
João Paulo Scoralick
Ciência da Computação - UFJF/MG
http://anouterview.blogspot.com
http://escape13.blogspot.com
 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 20/12/2007 14:00:02
|
cassio
GUJ Master
![[Avatar]](/images/avatar/8ae7398026ed8f2172aefd6cbc856bc8.jpg)
Membro desde: 19/06/2006 08:25:28
Mensagens: 1336
Localização: Caieiras-SP
Offline
|
Pelo erro, acho que não é a classe vector da STL não, pois esta possui o operador [] sobrecarregado por default. O erro apresentado indica que o operador [] não foi sobrecarregado na definição da classe Vector.
|
Cássio Marques
Blog
|
|
|
 |
|
|