Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht Das deutsche QBasic- und FreeBASIC-Forum
Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
 
FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen  RegistrierenRegistrieren
ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin
Zur Begleitseite des Forums / Chat / Impressum
Aktueller Forenpartner:

C++ nach FB - Syntaxfrage
Gehe zu Seite 1, 2, 3  Weiter
 
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Profi-Forum
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
E-P-S



Anmeldungsdatum: 16.09.2004
Beiträge: 500
Wohnort: Neuruppin

BeitragVerfasst am: 13.08.2009, 14:47    Titel: C++ nach FB - Syntaxfrage Antworten mit Zitat

Hi zusammen. Wie würdet ihr diese C++ Zeile nach FB übersetzen?

Es verwirrt mich etas das ein "&" Symbol HINTER dem Variablentyp steht.

Code:
TSXAPIFN CtsxVector3f& tsxAddVec3f( CtsxVector3f& u, const CtsxVector3f& v );


Normalerweise steht dieses "&" ja hinter der Variablen und bezeichnet eine Referenzierte Variable. Also statt "ByVal u as CtsxVector3f" wäre "ByRef u as CtsxVector3f" richtig.

Aber was ist mit dem Rückgabetyp? Ist der dann auch ne Referenz oder ein Pointer????
_________________
Man kann sich öfter als zweimal im Leben halb tot lachen.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Jojo
alter Rang


Anmeldungsdatum: 12.02.2005
Beiträge: 9736
Wohnort: Neben der Festplatte

BeitragVerfasst am: 13.08.2009, 14:57    Titel: Antworten mit Zitat

Zitat:

Normalerweise steht dieses "&" ja hinter der Variablen und bezeichnet eine Referenzierte Variable.

Nein, Es steht hinter dem Datentyp, das ist schon richtig so.
_________________
» Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
28398



Anmeldungsdatum: 25.04.2008
Beiträge: 1917

BeitragVerfasst am: 13.08.2009, 14:58    Titel: Antworten mit Zitat

Referenz und Pointer sind das gleiche...

Code:
TSXAPIFN CtsxVector3f& tsxAddVec3f( CtsxVector3f& u, const CtsxVector3f& v );

Inetwa so:
Code:
tsxAddVec3f (u as CtsxVector3f Ptr, v as CtsxVector3f Ptr) as CtsxVector3f Ptr


/EDIT
Jojo war schneller.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
E-P-S



Anmeldungsdatum: 16.09.2004
Beiträge: 500
Wohnort: Neuruppin

BeitragVerfasst am: 13.08.2009, 15:00    Titel: Antworten mit Zitat

Das heißt es ist Wurst ob ich das per ByVal oder ByRef übergebe?

Warum differenzieren die das dann in C++ ???
_________________
Man kann sich öfter als zweimal im Leben halb tot lachen.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
28398



Anmeldungsdatum: 25.04.2008
Beiträge: 1917

BeitragVerfasst am: 13.08.2009, 18:58    Titel: Antworten mit Zitat

PTR.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
E-P-S



Anmeldungsdatum: 16.09.2004
Beiträge: 500
Wohnort: Neuruppin

BeitragVerfasst am: 13.08.2009, 19:07    Titel: Antworten mit Zitat

Ja, jetzt wo du es sagst könnt ich mir auch mir der flachen Hand vor die Stirn hauen - nix für ungut ...


DANKE
_________________
Man kann sich öfter als zweimal im Leben halb tot lachen.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
E-P-S



Anmeldungsdatum: 16.09.2004
Beiträge: 500
Wohnort: Neuruppin

BeitragVerfasst am: 13.08.2009, 23:37    Titel: Antworten mit Zitat

So, ich hätte noch eine weitere Frage.

Wie übersetzt man das hier?

Code:
static float filter_array[] = { 0.0f , 1.0f, 0.0f,
                        1.0f ,   2.0f, 1.0f,
                        0.0f , 1.0f, 0.0f};

_________________
Man kann sich öfter als zweimal im Leben halb tot lachen.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Jojo
alter Rang


Anmeldungsdatum: 12.02.2005
Beiträge: 9736
Wohnort: Neben der Festplatte

BeitragVerfasst am: 13.08.2009, 23:54    Titel: Antworten mit Zitat

Code:
dim as single filter_array(...) = {0.0, 1.0, 0.0, 1.0, 2.0, 1.0, 0.0, 1.0, 0.0}

Sollte so gehen. Falls du noch die "aktuelle" Stable-Version vom letzten Jahr verwendest, musst du "0 to 8" statt "..." verwenden.
_________________
» Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
E-P-S



Anmeldungsdatum: 16.09.2004
Beiträge: 500
Wohnort: Neuruppin

BeitragVerfasst am: 14.08.2009, 00:10    Titel: Antworten mit Zitat

Funzt - danke
_________________
Man kann sich öfter als zweimal im Leben halb tot lachen.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
E-P-S



Anmeldungsdatum: 16.09.2004
Beiträge: 500
Wohnort: Neuruppin

BeitragVerfasst am: 15.08.2009, 17:35    Titel: Antworten mit Zitat

Hi, ich schon wieder. Diesmal gehts um was ähnliches wie oben. Folgende Definition:

Code:
Type CtsxTxmx3f
   matrix(0 To 3-1, 0 To 4-1) As Single
End Type


Wie sieht dafür die Dimensionierung und gleichzeitige Belegung aus? Ich hab es so versucht - das mag FB aber nicht compilieren. Auch mit "(" und Kombinationen hab ich es schon versucht.

Code:
Dim Shared wdgSampleTrans(0 To 1-1) As CtsxTxmx3f => { {0.17398f, 0.0f, 0.0f, 0.0f}, {0.0f, 0.190981f, 0.0f, 0.0f}, {0.0f, 0.0f, 0.0744249f, 0.0308843f } }

_________________
Man kann sich öfter als zweimal im Leben halb tot lachen.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
nemored



Anmeldungsdatum: 22.02.2007
Beiträge: 4594
Wohnort: ~/

BeitragVerfasst am: 15.08.2009, 17:42    Titel: Antworten mit Zitat

So weit ich weiß, kommst du bei der automatischen Belegung von FB-UDTs um einen eigenen CONSTRUCTOR-Befehl nicht herum. Außer du willst TYPE (Funktion) verwenden.
_________________
Deine Chance beträgt 1:1000. Also musst du folgendes tun: Vergiss die 1000 und konzentriere dich auf die 1.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
E-P-S



Anmeldungsdatum: 16.09.2004
Beiträge: 500
Wohnort: Neuruppin

BeitragVerfasst am: 15.08.2009, 17:50    Titel: Antworten mit Zitat

Tja, wenn ich jetzt wüsste wovon du redest zwinkern

Könntest du mir netter Weise mal Beispiele aufzeigen - danke.
_________________
Man kann sich öfter als zweimal im Leben halb tot lachen.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
nemored



Anmeldungsdatum: 22.02.2007
Beiträge: 4594
Wohnort: ~/

BeitragVerfasst am: 15.08.2009, 17:56    Titel: Antworten mit Zitat

Code:
type testtyp
  as integer x, y
end type

dim as testtyp test = type<testtyp>(3, 5)
print test.x, test.y


bzw.

Code:
type testtyp
  as integer x, y
  declare constructor(x as integer, y as integer)
end type

constructor testtyp(x as integer, y as integer)
  this.x = x
  this.y = y
end constructor

dim as testtyp test = testtyp(3, 5)
print test.x, test.y


Bei Deinem Typ dann halt entsprechend angepasst.
_________________
Deine Chance beträgt 1:1000. Also musst du folgendes tun: Vergiss die 1000 und konzentriere dich auf die 1.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
E-P-S



Anmeldungsdatum: 16.09.2004
Beiträge: 500
Wohnort: Neuruppin

BeitragVerfasst am: 15.08.2009, 18:19    Titel: Antworten mit Zitat

So versuche ich es mal - vielen Dank
_________________
Man kann sich öfter als zweimal im Leben halb tot lachen.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
E-P-S



Anmeldungsdatum: 16.09.2004
Beiträge: 500
Wohnort: Neuruppin

BeitragVerfasst am: 15.08.2009, 18:37    Titel: Antworten mit Zitat

Und schon hab ich das nächste...was ist das denn bitte:

Code:
bBox->minbounds = bBox->maxbounds = *vecs++;


a = b = c oder was????
_________________
Man kann sich öfter als zweimal im Leben halb tot lachen.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Jojo
alter Rang


Anmeldungsdatum: 12.02.2005
Beiträge: 9736
Wohnort: Neben der Festplatte

BeitragVerfasst am: 15.08.2009, 19:55    Titel: Antworten mit Zitat

richtig. von rechts nach links lesen: der pointer wird um eins erhöht. dieser wert wird dann den beiden bBox-Variablen zugewiesen.
_________________
» Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
E-P-S



Anmeldungsdatum: 16.09.2004
Beiträge: 500
Wohnort: Neuruppin

BeitragVerfasst am: 16.08.2009, 14:50    Titel: Antworten mit Zitat

So, ich hab schon wieder mal ne Frage. Diesmal geht es um diese Zeile hier:

Code:
yrot = ( direction.y < 0 ) ? 180 : 0


wie übersetzt man diesen Ausdruck?

Danke schonmal
_________________
Man kann sich öfter als zweimal im Leben halb tot lachen.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
St_W



Anmeldungsdatum: 22.07.2007
Beiträge: 949
Wohnort: Austria

BeitragVerfasst am: 16.08.2009, 15:09    Titel: Antworten mit Zitat

Code:
If direction.y < 0 then yrot = 180 else yrot = 0

_________________
Aktuelle FreeBasic Builds, Projekte, Code-Snippets unter http://users.freebasic-portal.de/stw/
http://www.mv-lacken.at Musikverein Lacken (MV Lacken)
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
E-P-S



Anmeldungsdatum: 16.09.2004
Beiträge: 500
Wohnort: Neuruppin

BeitragVerfasst am: 16.08.2009, 15:19    Titel: Antworten mit Zitat

Vielen Dank
_________________
Man kann sich öfter als zweimal im Leben halb tot lachen.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
28398



Anmeldungsdatum: 25.04.2008
Beiträge: 1917

BeitragVerfasst am: 16.08.2009, 15:31    Titel: Antworten mit Zitat

http://de.wikibooks.org/wiki/C-Programmierung:_Ausdrücke_und_Operatoren
http://de.wikibooks.org/wiki/C-Programmierung#Referenzen

Finde ich bei sowas immer sehr praktisch...
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Profi-Forum Alle Zeiten sind GMT + 1 Stunde
Gehe zu Seite 1, 2, 3  Weiter
Seite 1 von 3

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.

 Impressum :: Datenschutz