In C++ ist es üblicher, dafür Templates zu verwenden. Die compilieren dann einfach nicht, wenn der Typ die geforderte Schnittstelle nicht erfüllt.
template< typename T >
void NotifyObservers( T& receiver )
{
receiver.TuWasGanzTolles();
}
hallo
ich möchte unter Kubuntu über die Prallele Schnittstelle (parport) Daten (string) senden und gleich wieder einlesen und mit den gesendeten vergleichen ... also ein Test ob die Schnittstelle funktioniert.
Dazu wird ein Loopbackstecker benutzt.
hat man zwei möglichkeiten:
- Mit open, read, write und close arbeiten (ist komfortabel und man benötigt keine root rechte)
- über die Adresse (0x378) mit outb zugreifen (Lowlevel: besser geeignet um einzelne Pins anzusteurern; benötigt root rechte)
Habe schon viel herumprobiert aber bekomme es einfach nicht nicht.
Möchte/sollte wenn möglich die erste möglichkeit nutzen.
Hat mir vielleicht jemand ein gutes Beispiel!?
Schonmal Danke Christian
hallo
ich möchte unter Kubuntu über die Prallele Schnittstelle (parport) Daten (string) senden und gleich wieder einlesen und mit den gesendeten vergleichen ... also ein Test ob die Schnittstelle funktioniert.
Dazu wird ein Loopbackstecker benutzt.
hat man zwei möglichkeiten:
- Mit open, read, write und close arbeiten (ist komfortabel und man benötigt keine root rechte)
- über die Adresse (0x378) mit outb zugreifen (Lowlevel: besser geeignet um einzelne Pins anzusteurern; benötigt root rechte)
Habe schon viel herumprobiert aber bekomme es einfach nicht nicht.
Möchte/sollte wenn möglich die erste möglichkeit nutzen.
Hat mir vielleicht jemand ein gutes Beispiel!?
Schonmal Danke Christian
Dieser Thread wurde von Moderator/in HumeSikkins aus dem Forum C++ in das Forum Linux/Unix verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?
Dieses Posting wurde automatisch erzeugt.
Dieser Thread wurde von Moderator/in HumeSikkins aus dem Forum C++ in das Forum Linux/Unix verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?
Dieses Posting wurde automatisch erzeugt.
ich finde, dass das einzige was daraus hervorgebracht wird wenn man sich damit beschäfftig....das ist, dass man wieder mal ein riesiges unwichtiges Wissen hat ...
genau deshalb gibts shells... für leute, die sich mit unnötigem wissen profilieren wollen. braucht ja kein mensch, mit klickibunti geht alles viel schneller
aus dem man das nützlicheauch ganz leicht einfach mal so ausm net zeihen kann und sich somt die viele schwere Lernarbeit ersparrt
wer hat denn die sachen ins net reingestellt? oder wer schreibt beispielsweise jetzt einen foreneintrag, der mittels suchmaschinen gefunden werden kann? ^^
Kalr beschäftige ich mich auh mit Wine. Nur gerade COM, DCOM und MFC sind nicht so einfach...
Ausserdem sind manche der DLLs auch definitv lizenzpflichtig
Chewie83 schrieb:
Einfache Antwort:
gcc ist ein C-Compiler.
g++ ist ein C++-Compiler.
gcc kompiliert auch C-Code. Der erkennt die Sprache an der Dateiendung. Aber der gcc übergibt andere Optionen an den Linker als der g++.
tadi schrieb:
Juhu dieses Problem ist nun gelöst:
Ein
#include <boost/type_traits.hpp>
hat geholfen.
Leider hat diese Lösung auf mein generelleres Problem noch keine Auswirkung gehabt...
Dieter
Fein, daß Du die Lösung gefunden hast ;).
Gruß
Tommi
Hi RedWing,
danke für deinen Post/Quelltext.
Das hört sich für mich aber sehr Linux-spezifisch an.
Ich brauch aber ne Möglichkeit die unter allen UNIX-Derivaten funktioniert (z. B. Linux, HP-UX, Solaris etc.)
Vielleicht kann ich ja einen Geschwindigkeitsvorteil erreichen, wenn ich das Ganze mit einem extra fork() auslagere.
Etwas assemblerseitig zu programmieren wird vermutlich auch nicht funktionieren, da das wieder plattformabhängig ist.
Bin gerade noch auf folgendes gestoßen:
http://standards.freedesktop.org/wm-spec/wm-spec-latest.html#id2505795
Der Fenstermanager sollte im Root-Window einen Propertywert vorhalten, der Alle Fenster auflistet. Siehe dazu auch XGetTextProperty
Wie gesagt. Selber auprobiert hab ich das auch noch nicht. Aber es müsste so gehen!
Ausgehend von http://wiki.linuxquestions.org/wiki/Bash_tips#Renaming_a_set_of_files
Als Direkteingabe:
for file in *.xyz; do cp $file ${file%.xyz}.abc; done
Oder als Skript:
#!/bin/sh
for file in *.$1;
do cp $file ${file%.$1}.$2;
done
Wobei Aufruf:
>$ mycopy xyz abc