001 
            13.09.2010, 22:15 Uhr 
            Hans 
            Library Walker (Operator)
             
            
             
             
             | 
          Hi,
  bin mir jetzt nicht ganz sicher, aber ich denke, das ist ein Fall für den Einsatz von extern, da ja Unit1/Form1 und Unit2/Form2 in zwei verschiedenen Dateien stehen, die vom Compiler separat übersetzt werden. 
  Vergleiche Dein Problem mal mit diesem Beispiel, evtl. ist das die Lösung. 
   
  
  
    | C++: | 
   
  
    
      
  // Datei_1.cpp
  #include <iostream>
  using namespace std;
  extern int a, b;
  void f1(); void f2();
  int main() {   f1();   f2();   cout << "a = " << a << endl;   cout << "b = " << b << endl;   return 0; } 
       
      
     | 
   
   
  
  
   
  
  
    | C++: | 
   
  
    
      
  // Datei_2.cpp
  int a, b;
  void f1() {   a=5; }
  void f2() {   b=8; } 
       
      
     | 
   
   
  
  Das ergibt: 
   
  
  
    | Code: | 
   
  
    
      
  E:\Watcom>externtest a = 5 b = 8
  E:\Watcom> 
       
      
     | 
   
   
  
  Zu beachten ist bei dem Beispiel, das es ein Charactermode Programm ist, also in der Konsole (DOS-Fenster, Kommandozeile) läuft. Ich hab es hier externtest genannt. Und die externen Variablen müssen am Anfang, d.h. vor main definiert werden. Wie man das jetzt genau im Borland C++ Builder umsetzt, weis ich gerade nicht, aber das ist auf jeden Fall das Prinzip der verwendung von extern.
  Hans -- Man muss nicht alles wissen, aber man sollte wissen, wo es steht. Zum Beispiel hier:  Nachdenkseiten oder  Infoportal Globalisierung. |