[sigc] where is error? reference binding is impossible?
- From: Paul Pogonyshev <pogonyshev gmx net>
- To: libsigc-list gnome org
- Subject: [sigc] where is error? reference binding is impossible?
- Date: Sun, 3 Sep 2006 16:38:24 +0300
Apparently f1() _is_ called, but with a reference pointing to a wrong
place in memory...
#include <iostream>
#include <sigc++/sigc++.h>
namespace
{
void
f1 (int& x)
{
x = 1;
}
void
f2 (int* x)
{
*x = 1;
}
}
int
main ()
{
int x1 = 0;
std::cout << "x1 = " << x1 << '\n';
sigc::slot <void> _f1 = sigc::bind (&f1, x1);
_f1 ();
std::cout << "x1 = " << x1 << '\n';
int x2 = 0;
std::cout << "x2 = " << x2 << '\n';
sigc::slot <void> _f2 = sigc::bind (&f2, &x2);
_f2 ();
std::cout << "x2 = " << x2 << '\n';
return 0;
}
[Date Prev][
Date Next] [Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]