Bug bei verwendung von Pointern auf Maps

Hier werden, insbesondere in den Beta-Phasen, Bugmeldungen gepostet. Das offizielle BugForum ist allerdings hier.
Benutzeravatar
cxAlex
Beiträge: 2111
Registriert: 26.06.2008 10:42

Re: Bug bei verwendung von Pointern auf Maps

Beitrag von cxAlex »

ts-soft hat geschrieben:
PMV hat geschrieben: funktioniert auch wunderbar.
In der dritten Zeile ordnest Du ja auch einen Wert zu, davor ist es ungültig. Kannst ja mal davor ein Debug
einfügen, dann merkste es.
In der dritten Zeile weist er dem aktuellen Eintrag der Map einen Wert zu. Anlegen tut er ihn in der 2. Zeile und da weist er ihm keinen Wert zu. Also weist legt er einen neuen Wert an ohne! ihm einen Wert zuzuweisen!

Also ist das ganze entweder ein undokumentiertes Feature oder ein Bug.

Gruß, Alex
Projekte: IO.pbi, vcpu
Pausierte Projekte: Easy Network Manager, µC Emulator
Aufgegebene Projekte: ECluster

Bild

PB 5.1 x64/x86; OS: Win7 x64/Ubuntu 10.x x86
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Re: Bug bei verwendung von Pointern auf Maps

Beitrag von ts-soft »

Code: Alles auswählen

MyMap("Key")
MyMap() = 30
Ich würde sagen, das ist lediglich eine Optimierung des Compilers und man sollte es besser nicht so nutzen.
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Benutzeravatar
DrShrek
Beiträge: 1970
Registriert: 08.09.2004 00:59

Re: Bug bei verwendung von Pointern auf Maps

Beitrag von DrShrek »

ts-soft hat geschrieben:

Code: Alles auswählen

MyMap("Key")
MyMap() = 30
Ich würde sagen, das ist lediglich eine Optimierung des Compilers und man sollte es besser nicht so nutzen.
Also wenn es in der Online Help so auch möglich ist, dann sollte das auch fehlerfrei funktionieren.
Also dann ist es ein BUG, wenn dem nicht so ist.

Alternativ könnte es wieder als Feature abgekündigt werden. Dann ist es aber als SyntaxFehler anzumeckern.
Siehste! Geht doch....?!
PB*, *4PB, PetriDish, Movie2Image, PictureManager, TrainYourBrain, ...
Benutzeravatar
mk-soft
Beiträge: 3845
Registriert: 24.11.2004 13:12
Wohnort: Germany

Re: Bug bei verwendung von Pointern auf Maps

Beitrag von mk-soft »

Hab mal mit der Map gesp...

Code: Alles auswählen

Structure udtMap
  iVal.i
  strVal.s
EndStructure

Procedure Output(*this.udtMap)
  
  Debug *this\iVal
  Debug *this\strVal
  
EndProcedure

NewMap MyMap.udtMap()
MyMap("DE")
MyMap()\iVal = 30
MyMap()\strVal = "Hallo Welt"
MyMap("EN")
MyMap()\iVal = 22
MyMap()\strVal = "Hello world"

Output(MyMap("DE"))
Output(MyMap("EN"))
Funktioniert wie bei einer LinkedList

FF :wink:
Alles ist möglich, fragt sich nur wie...
Projekte ThreadToGUI / EventDesigner V3 / OOP-BaseClass-Modul
Downloads auf MyWebspace / OneDrive
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Re: Bug bei verwendung von Pointern auf Maps

Beitrag von ts-soft »

Bloß nur mit Namen existiert der Eintrag nicht in der Hashmap. Erst nach Zuordnung eines Wertes, wird er
eingetragen, was ja auch Sinn macht. So stelle ich mir das jedenfalls vor. Dann stimmt auch die Syntax und die
Hilfe. Dann ist auch klar, warum keine Pointer existieren, solange keine Werte in der Hashmap sind.
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Antworten