Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Algorithmen, Datenstrukturen und Klassendesign (https://www.delphipraxis.net/78-algorithmen-datenstrukturen-und-klassendesign/)
-   -   C++ Class in CBuilder XE5 (https://www.delphipraxis.net/180033-class-cbuilder-xe5.html)

Garfield 17. Apr 2014 20:48

Class in CBuilder XE5
 
In Delphi habe ich eine Klasse, die im Prinzip so aussieht:
Delphi-Quellcode:
unit uNativeWiFi;

interface

...

type
  TNativeWifi = class
  private
    ...
    procedure EnumInterfaces;
    ...
    function GetInterface_Count: DWORD;
    ...
  public
    constructor create;
    destructor destroy;
    property Interface_Count: DWORD read GetInterface_Count;
    ...
  end;

implementation

procedure TNativeWifi.EnumInterfaces;
begin
  ...
end;

...

constructor TNativeWifi.create;
begin
  ...
end;

destructor TNativeWifi.destroy;
begin
  ...
end;

function TNativeWifi.GetInterface_Count: DWORD;
begin
  ...
end;

...

end.
Jetzt wollte ich das in den CBuilder übernehmen. Finde dafür aber irgendwie keine Anleitung, wie das aussehen müsste. Also habe ich mir gedacht den Interface-Teil in die *.h und den Implementation-Teil in die *.cpp und es damit versucht:
Code:
//---------------------------------------------------------------------------

#ifndef uNativeWiFiH
#define uNativeWiFiH
//---------------------------------------------------------------------------

...

class _NativeWifi
{
  private:
    ...
    void EnumInterfaces();
    ...
    DWORD GetInterface_Count()
    ...
  public:
    _NativeWiFi();
    ~_NativeWiFi();
    __property DWORD    Interface_Count = {read = GetInterface_Count};
    ...
};

#endif
Code:
//---------------------------------------------------------------------------

#pragma hdrstop

#include "uNativeWiFi.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)

void _NativeWifi::EnumInterfaces();
...
Weiter bin ich nicht gekommen. Den Destruktor
Code:
~_NativeWiFi();
habe ich auskommentiert und '[bcc32 Fehler] uNativeWiFi.cpp(62): E2333 Klassen-Member '_NativeWifi::EnumInterfaces()' außerhalb der Klasse deklariert.' bekomme ich nicht weg. Die Hilfe ist da leider nicht allzu hilfreich.

Garfield 18. Apr 2014 23:10

AW: Class in CBuilder XE5
 
Den "[bcc32 Fehler] uNativeWiFi.cpp(62): E2333 Klassen-Member '_NativeWifi::EnumInterfaces()' außerhalb der Klasse deklariert." habe ich nun erledigt. Man musste nur den Rest der Procedure übersetzen.


Alle Zeitangaben in WEZ +1. Es ist jetzt 05:00 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz