001
03.02.2014, 23:51 Uhr
Lensflare
|
Hi,
also da gibt es mehrere Möglichkeiten.
Eine davon ist, eine statische Methode bereitzustellen, die eine Instanz der Klasse anlegt und zurückgibt:
C++: |
//.h class BufferedAsyncSerialProvider { static BufferedAsyncSerial* serial; public: static BufferedAsyncSerial& GetSerial(); };
//.m BufferedAsyncSerialProvider::BufferedAsyncSerial* serial = 0;
BufferedAsyncSerial& BufferedAsyncSerialProvider::GetSerial() { if(serial == 0) { serial = new BufferedAsyncSerial(m_stComPort, m_stBaudrate); } return *serial; }
|
C++: |
try { BufferedAsyncSerialProvider::GetSerial().writeString("TESTAUSGABE\r\n"); } catch(boost::system::system_error& e) { cout<< "Error: "<<e.what()<<endl; }
|
Tut gut mal wieder C++ zu schreiben. Ich hoffe dass ich keine Fehler reingemacht habe -- Wenn das Gehirn so einfach wäre, dass wir es verstehen könnten, wären wir so einfach, dass wir es nicht verstehen könnten. (Emerson Pugh Trost) Dieser Post wurde am 03.02.2014 um 23:55 Uhr von Lensflare editiert. |