[boost::asio] Znowu problem z io_service

0

Chciałbym was prosic o napisanie co moze spowodowac błąd:

1>c:\program files\boost\boost_1_38\boost\asio\io_service.hpp(428) : error C2248: 'boost::noncopyable_::noncopyable::noncopyable' : cannot access private member declared in class 'boost::noncopyable_::noncopyable'
1>        c:\program files\boost\boost_1_38\boost\noncopyable.hpp(27) : see declaration of 'boost::noncopyable_::noncopyable::noncopyable'
1>        c:\program files\boost\boost_1_38\boost\noncopyable.hpp(22) : see declaration of 'boost::noncopyable_::noncopyable'
1>        This diagnostic occurred in the compiler generated function 'boost::asio::io_service::io_service(const boost::asio::io_service &)'

Oczywiscie kopiowanie jest zabronione.
I tego nie robie....
W jednej klasie robie:

 boost::thread th1(Pipe(n,.....));

klasa Pipe deklaruje

#ifndef _PIPE_MASTER
#define _PIPE_MASTER     
#include <iostream>
#include <vector>
#include <boost/thread.hpp>
#include <boost/asio.hpp>
#include <boost/array.hpp>
...
...

class Pipe{
..
..

    protected:
        boost::asio::io_service pvmIO;

I nic wiecej sie z tym nie dzieje......
Juz mi rece opadaja.

0

Zrób:

class Pipe{
..
..

    protected:
                boost::asio::io_service& pvmIO;

I w konstruktorze też przekaż referencję.

0

Dzieki za odpowiedz.

Jest jeszcze problem z konstruktorem domyslnym
trzeba w nim zainicjalizowac to boost::asio:io_stream& w liscie inicjalizacyjnej,
a rzutowanie 0 nie chce dzialac za bardzo.

0

bo referencji zerem nie wypełnisz... daj wskaźnik.

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0