C++ Portierung von MS-VC++ nach Linux

Musikant

Grünschnabel
Hallo,

ich bin gerade dabei, ein paar Tools von MS-VC++ nach Linux zu portieren. Nun hänge ich aber an einer Stelle und habe noch keine zufriedenstellende Lösung gefunden: wie können die Objecte und Klassen der MFC portiert werde? Gibt es irgendwo (im Internet) eine Tabelle, wo die MFC-Klassen ect. und ihre Linux-Pendants gegenübergestellt sind?
Die für mich wichtigste ist jetzt gerade die Klasse "CString" - wer kann mir einen Hinweis geben, wie die mit möglichst wenigen Eingriffen in den Source-Code der zu portierenden Tools, ersetzt werden kann?

Der Musikant
 
schreib dir selber ne string-klasse, die das gleiche kann wie cstring.
sollte ja nicht besonders schwer sein. (ist CString nicht eigentlich eine klasse des standarts und nicht von mfc und sollte daher auch in linux umgebungen zugänglich sein?).
ich benutze immer char-arrays/-pointer, das ist auch einfach (wie ich finde sogar einfacher), gibt mir absolute zugriffsrechte und optimale performance.
aber ich glaube eigentlich nicht, dass es zu den mfc-klassen gleichwertige klassen in linuxumgebung gibt. (kann aber trotzdem sein, ich kenn mich nicht so genau aus)
immerhin sagt ja der name mfc schon selber "Microsoft".

für was für klassen suchst du denn sonst noch ersetzungen?
 
Original geschrieben von Beichtpfarrer
schreib dir selber (1) ne string-klasse, die das gleiche kann wie cstring. ... ist CString nicht eigentlich eine klasse des standards und nicht von mfc (2) ...
ich benutze immer char-arrays/-pointer, (3) das ist auch einfach ...
...ich kenn mich nicht so genau (4) aus...

für was für klassen (5) suchst du denn sonst noch ersetzungen?
ad (1):
das wäre der Weg, den ich einschlagen müsste, fände ich keine Entsprechung bei Linux.

ad (2):
so weit ich weiß, doch. CString ist in afx.h definiert und zählt zu "Microsoft Foundation Class Library and Templates"

ad (3):
hätte ich auch gemacht, wenn der Source-Code von mir stammen würde - tut er aber nicht. Ich muss ihn nehmen/portieren, so wie er ist.

ad (4):
Schade! Hat vielleicht schon mal jemand eine solche Portierung vorgenommen?

ad (5):
ich weiß nicht, das ist ganz vom Source-Code der Tools abhängig, die ich mir noch vornehme(n muss).

Der Musikant
 
oh,
heisst das std::string... auf jedenfall gibts ne stringklasse, soviel wusste ich.
du kannst dir ja davon eine klasse ableiten, die CString nennen und ihr das gleiche interface geben, wie das CString hat. dann musst du im code nichts ändern.
mfg
 
Zurück