Wenn dies dein erster Besuch hier ist, lese bitte zuerst die Hilfe - Häufig gestellte Fragen durch. Du musst dich registrieren, bevor du Beiträge verfassen kannst. Du kannst auch jetzt schon Beiträge lesen. Suche dir einfach das Forum aus, das dich am meisten interessiert.
zeiger zeigen nur auf eine adresse im speicher, was das im speicher ist hast du vorher durch
box* deinobjectname definiert
wenn du jetzt auf das objekt zugreifen willst musst du erstmal die adresse auflösen und dann kannst du auf das objekt zugreifen wie sonst auch, deswegen klappt ja auch die (*zeiger).holeflaeche schreibweise
die -> sind nur kurzschreibweisen davon an die sich jeder gewöhnt hat (-> ist ein PFEIL er ZEIGT auf was :D)
wenn du objekte ohne nen * definierst landen die auf dem stack, nen kleiner speicher der sehr bregrent ist der aber immer zur verfügung steht, da dort alles einfach nur "abgelegt" wird (deswegen nennt man das ding ja auch stack bzw stapel) ist die adresse schon im vorfeld klar
bei einem pointer auf eine class oder struct greifst du auf die member über ->-operator zu
bei der instanz einer klasse oder struct greifst du auf die member über .-operator zu
(*zeiger).holeflaeche() und zeiger->holeflaeche() werden so gelesen:
member "holeflaeche" vom objekt, auf das "zeiger" zeigt
Ich bins nochmal. Hab das nun alles hinbekommen und funktioniert super. Das speziell hab ich eingebaut:
1) mysqli
2) real_escape_string bei den eingaben
3) passwörter werden mit SHA2 mit Keylänge 512 abgespeichert
4) extra user, der nur auf diese login datenbank zugriff hat
Ich will ja keinen Online-Shop oder ne Bankseite eröffnen. Ist TLS da nicht etwas übertrieben? Andererseits seh ich keine Möglichkeit, wie man sonst verhindern könnte, dass jemand Username+Pw nach dem Aktivieren vom Login-Button in der Mitte abfängt.
Joa ... vllt kein unbedingtes Muss für kleinere Sachen ... aber kannst es ja machen wenn Du die Möglichkeit hast. ;) Finde Logins ohne TLS sonst halt irgendwie nicht Hotspot-tauglich. ^^
Zitat von qwertz
Spoiler:
Zitat von moonylo
Ich bins nochmal. Hab das nun alles hinbekommen und funktioniert super. Das speziell hab ich eingebaut:
1) mysqli
2) real_escape_string bei den eingaben
3) passwörter werden mit SHA2 mit Keylänge 512 abgespeichert
4) extra user, der nur auf diese login datenbank zugriff hat
ich muss ganz ehrlich sagen, dass ich diese argumentation immer wieder witzig finde. wisst ihr eigentlich wie aufwendig und schwierig es ist, in den datenverkehr eines nutzers inzuklinken und logindaten oder ähnliches abzuzwacken? wenns keine kritische anwendung is, dann is das erstmal völlig nebensächlich.
ein signiertes tls/ssl zertifikat kostet zusätzlich noch geld, nicht zertifiziertes zeug kann man eigentlich gleich weglassen.
Mein Chef will das ich per IronPython eine Funktion schreibe die andere Pythonscripte einliest und deren Funktionen filtert. Ich habe ehrlich gesagt nicht soviel Ahnung von Python, daher weiß ich nicht, zu was die Sprache alles fähig ist, aber da sie C# Libraries nutzt habe ich mich mal ans Werk gemacht.
Ich habe eine RegEx geschrieben, welche die Funktionen filtert und es hat tatsächlich die Resultate (getestet mit einem RegEx Tester den ich runtergeladen habe) gebracht die ich habe wollte:
Group 1: Der Funktionsname
Group 2: Die Funktionsparameter
Group 3: Der Inhalt der Funktion
Komischerweise lief das dann beim Live-Testing total daneben. Zwar hat er mir Funktionsnamen und Funktionsparameter ausgelesen, den Funktionsinhalt jedoch nicht bzw. nicht richtig. Ich habs dann mal mit einem anderen RegEx Tester (http://regexhero.net/tester/) versucht, dieser wiederum zeigt mir an, das Group 3 nur einen kleinen Teil des Funktionsinhalt ausgibt, beginnend mit einem Newline/Return Character und endend mit der return Zeile z.B. return objDic.
Meine bisherige Regex schaut so aus: "(?i)def[s]+([w]+)(([, [w]+))(?:[:{1}]s*)([n].*(?!ndef[s]+))+"
Ergebnis müsste bei der ersten Funktion dann sein:
Group 1: test_function
Group 2: some_parameter
Group 3: try:
some_cool_code_goes_here()
except Exception as ex:
DetailsBox.Show(ex)
Aktuelles Resultat:
Group 1: test_function
Group 2: some_parameter
Group 3: (newline/return character)
return objDic
Vorab: Ich habe echt keinerlei großartige Vorkenntnisse, habe mich aber mal ein wenig an Android und Java gewagt. Wollte ein wenig rumspielen und dafür einen Pace-Rechner programmieren.
Funktionsprinzip: Pace in min/km eingeben und es werden die Wettkampfzeiten für verschiedene Distanzen errechnet. Das funktioniert auch soweit ganz gut, allerdings sind die Ergebnisse derzeit noch in Sekunden.
Ich hätte die Ergebnisse nun allerdings in einer vernünftigen Zeitangabe: hh : mm : ss, statt in Sekunden. Kann mir da vielleicht jemand Hilfestellung geben.
Einerseits ist es ja simple Mathematik (Minuten = Sekunde*60 etc.), aber irgendwie bekomme ich es in Java nicht wirklich umgesetzt...
Kommentar