problem mit #includes
-
Ich hab aber nicht verstanden, was denn nicht funktioniert. Was soll heißen, dass das zweite include nicht beachtet wird?
-
in derm zweiten include ist ein Dialog AlbumDgl
wenn ich die diesen Dialog AlbumGlg->Show();
aufrufe gibts einen Fehler "undefined symbol"
chris
-
"undefined symbol" und dann.....
wär schon interessant was da noch so alles steht.

mfg Tom
-
ja stimmt eigentlich,sorry ...
da steht "undefined symbol AlbumDgl"
(also der Name der Klasse in dem 2ten include)chris
-
chris5 schrieb:
da steht "undefined symbol AlbumDgl"
(also der Name der Klasse in dem 2ten include)chris
dann ists aber einfach, denn oben schreibst du, dass deine .h datei so heißt: AlbDlg.h
hast du dich entweder hier verschrieben oder im Program beim vergeben des Namens für dein Fenster. Kann das sein?
-
hmmm ...also es sieht so aus
. . . #include "ArtDlg.h" #include "AlbDlg.h" . .in ArtDlg.h steht:
. class TArtistDlg : public TForm .in AlbDlg.h steht
. class TAlbumDlg : public TForm .in meinem programm gibts die aufrufe
erg =AlbumDlg->ShowModal(); . erg =ArtistDlg->ShowModal();bei der Reihenfolge der include Dateien ist AlbumDlg ein undefinied symbol
wenn ich die Reihenfolge vertausche ist ArtistDlg ein undef symbol
chris
-
ps: ja ich hab mich hier verschrieben ...

chris
-
ok, hab den Fehler gefunden,
in beiden Headern stand#ifndef OCBH #define OCBH . . #endifjetzt hab ich jeweils das gemacht ...
#ifndef ArtDlg.h #define ArtDlg.h . . #endif#ifndef AlbDlg.h #define AlbDlg.h . . #endifkann mir noch jemand sagen was das OCBH bedeutet ??
Danke
Chris
-
Eigentlich das du manuell daran rungefummelt hast.
Üblicherweise werden die Includewächter mit
#ifndef UnitXXXXX
gebildet, so dass das Problem nicht auftauchen kann.
-
da hab ich eigtnelich nix drann geändert ich hab zwei mal
datei neu->Dialog:Standart Dialog gemacht , dann den Dialogen andere Namen gegeben ( AlbumGlg und ArtistDlg aber beides im Objektinspektor) ... dann hab ich alles speicher gemacht und als ArtDlg.h und AlbDlg.h gespeicher ....
dann hab ich die beiden *.h dateien per hand in mein hauptprogramm eingertragen .... hhhmmmmmm .... naja ... jetzt gehts ja ... danke
falls mir doch noch jemand sagen könnt was ich das nächste mal besser machern soll (außer nicht per hand eintragen ) dann bitte ich drum es zu sagen
danke, bis bald
chris