Ir ao conteúdo
  • Cadastre-se

Classes - como posso criar eventos?


Cambalinho

Posts recomendados

olhem este codigo:

#include <iostream>

using namespace std;

class test
{
private:
bool blVisible;
int x=0,y=0;
public:
void Show();
bool Visible()
{
return blVisible;
}
void Visible(bool value)
{
blVisible=value;
if (value==true) Show();//call the event
}
};

test a;

void a::Show()
{
cout << "showed";
}

int main()
{
//read data

bool b;
cin >> b;
a.Visible(;
cin >> b;
a.Visible(;
return 0;
}

agora observem esta linha:

void a::Show()

se meter 'test' em vez de 'a', funciona. mas como sabemos 1 class é '1 tipo de variavel'. então as variavies podem ter valores diferentes, assim sendo, os eventos podem ter resultados diferentes. então como posso corrigir aquela linha?

(se conseguir corrigir essa linha, ja consigo fazer o que pretendo;))

Link para o comentário
Compartilhar em outros sites

Eu sugeriria a boost/signals2.hpp da biblioteca Boost C++. Talvez seja a melhor gerenciadora de eventos do C++. Digo, independente de plataforma.

Se quiser aprender a usar "event handling" com a Boost C++: http://en.highscore.de/cpp/boost/eventhandling.html

E para mais aplicações avançadas, o manual da Boost C++: http://www.boost.org/doc/libs/1_54_0/

Apenas cuidado, que o arquivo cabeçalho usado nesse tutorial, signal.hpp, já está descontinuado. O atual é o signals2.hpp.

E se você quiser algo dependente da plataforma, é só consultar a respectiva documentação.

Link para o comentário
Compartilhar em outros sites

Eu sugeriria a boost/signals2.hpp da biblioteca Boost C++. Talvez seja a melhor gerenciadora de eventos do C++. Digo, independente de plataforma.

Se quiser aprender a usar "event handling" com a Boost C++: http://en.highscore.de/cpp/boost/eventhandling.html

E para mais aplicações avançadas, o manual da Boost C++: http://www.boost.org/doc/libs/1_54_0/

Apenas cuidado, que o arquivo cabeçalho usado nesse tutorial, signal.hpp, já está descontinuado. O atual é o signals2.hpp.

E se você quiser algo dependente da plataforma, é só consultar a respectiva documentação.

desculpa mas ainda nem consegui instalar isso e tem muitos .h\hpp dependentes. mas da para resolver a minha situaçao? ja ficava contente com o meu codigo;)

Link para o comentário
Compartilhar em outros sites

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...