| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 12/11/2010 10:38:14
|
lucas_carvalho100
JavaEvangelist
![[Avatar]](/images/avatar/a7fe02c5b4127df98069e5321ccf6f1a.jpg)
Membro desde: 18/03/2010 08:23:16
Mensagens: 322
Offline
|
Olá pessoal, mais uma vez estou recorrendo ao fórum para tentar resolver um problema...
Bem, estou criando uma classe para gerenciar as conexões com o banco de dados, nessa classe eu utilizo uma biblioteca chamada otl.
Em um determinado momento eu preciso retornar uma conexão, quando eu faço isso "tomo uma portada na cara", dizendo que o membro da classe otl é privado e não posso retornar o mesmo.
Trecho do meu .cpp
declaração do atributo connection no .h
descrição do erro: error C2248: 'otl_connect::otl_connect' : cannot access private member declared in class 'otl_connect'
Se alguém souber como posso resolver esse problema fico grato.
Obrigado.
Lucas
This message was edited 1 time. Last update was at 12/11/2010 10:49:11
|
"A mente que se abre a uma nova idéia jamais voltará ao seu tamanho original."
Albert Einstein |
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 12/11/2010 10:48:58
|
lucas_carvalho100
JavaEvangelist
![[Avatar]](/images/avatar/a7fe02c5b4127df98069e5321ccf6f1a.jpg)
Membro desde: 18/03/2010 08:23:16
Mensagens: 322
Offline
|
Resolvido...
Alterei a biblioteca para colocar os membros dela público.
|
"A mente que se abre a uma nova idéia jamais voltará ao seu tamanho original."
Albert Einstein |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 12/11/2010 10:52:10
|
ViniGodoy
Moderador
![[Avatar]](/images/avatar/1921493b5362e63fbe8983f4bd54157d.png)
Membro desde: 11/12/2006 08:22:01
Mensagens: 20580
Localização: Curitiba/PR
Offline
|
Isso aqui é um problema: Pois você está retornando a conexão por valor. E isso irá disparar o construtor de cópia. Muitas vezes, esse construtor é deixado privado, justamente para evitar cópias acidentais. O ideal seria você retornar apenas uma referência para sua conexão: Outra coisa. Como esse método não altera a classe que o chama, é uma boa declara-lo como const. Se a conexão não puder ser alterada no método que chamar getConnection(), declare o retorno também como const:
This message was edited 2 times. Last update was at 12/11/2010 10:53:01
|
@ViniGodoy - Lattes
Tem dúvidas de Java? Poste no fórum! Não respondo dúvidas de java via MP!
Ponto V! - Desenvolvimento de Jogos Profissional - @Pontov - Facebook
Projeto Towel - Swing de uma forma inteligente (Novo lar do ObjectTableModel e do Auto-Filtro).
Ei... você está usando DefaultTableModel no seu projeto??
Não faça isso! Veja: http://www.guj.com.br/posts/list/15/199067.java#1001295 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 12/11/2010 11:20:43
|
lucas_carvalho100
JavaEvangelist
![[Avatar]](/images/avatar/a7fe02c5b4127df98069e5321ccf6f1a.jpg)
Membro desde: 18/03/2010 08:23:16
Mensagens: 322
Offline
|
Obrigado Viny, realmente voltei a classe para privado e fiz da forma como você escreveu e funcionou.
Obrigado pela ajuda, ainda estou muito ruim no c++... mas vou melhorar...
Obrigado mais uma vez...
|
"A mente que se abre a uma nova idéia jamais voltará ao seu tamanho original."
Albert Einstein |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 12/11/2010 11:38:28
|
ViniGodoy
Moderador
![[Avatar]](/images/avatar/1921493b5362e63fbe8983f4bd54157d.png)
Membro desde: 11/12/2006 08:22:01
Mensagens: 20580
Localização: Curitiba/PR
Offline
|
Dica: Não tente programar C++ como se fosse Java, nem como se fosse C.
Estude um pouco a linguagem, ou você terá problemas realmente catastróficos.
Boas referências são o livro do Deitel e o Effective C++. Há mais dicas de livros no roadmap c++ do Ponto V:
|
@ViniGodoy - Lattes
Tem dúvidas de Java? Poste no fórum! Não respondo dúvidas de java via MP!
Ponto V! - Desenvolvimento de Jogos Profissional - @Pontov - Facebook
Projeto Towel - Swing de uma forma inteligente (Novo lar do ObjectTableModel e do Auto-Filtro).
Ei... você está usando DefaultTableModel no seu projeto??
Não faça isso! Veja: http://www.guj.com.br/posts/list/15/199067.java#1001295 |
|
|
 |
|
|