To the Top
File:  root - diary - 2007 - 2007-06 - 2007-06-19_01.19AM.html
Tags: 学习笔记, Learning Notes, | English | Home Page | Category: Computing | 20863 Views, 50458 Search Bots | 114 Words

Subscribe to Feed Burner | Browse | Archive

I was stuck the whole afternoon in debugging... finally i found something interesting...

Every time Delphi's Dynamic Array , (setLength fun) is extended, the original array cells' addresses may be changed...

Because I use TTreeView to link its Data (Pointer) to a particular cell of a dynamic array.

e.g.

TreeView.Data:=@dynamic_array[i];

and

unfortunately, the program adds one cell to dynamic_array somewhere...

setLength(dynamic_array,length(dynamic_array)+1);

the original cells' address are totally different, which is really confusing....

anyway, i solved this by taking the alternative...

TreeView.Data:=Pointer(i);

when i use it, i go for something like this..

dynamic_array[integer(TreeView.Data)];

Haha, everything works out finally.
Tags: 学习笔记, Learning Notes, | English | Home Page | Category: Computing | 20863 Views, 50458 Search Bots | 114 Words Subscribe to Feed Burner

Related Articles

  1. Daily Interview Problem: Find the k-th Largest Element in a List
  2. Algorithm Interview: Maximum Path Sum in Binary Tree
  3. Delphi Dynamic Array
  4. Daily Interview Problem: Running Median
  5. Fix Brackets
  6. Reverse a Linked List
  7. Number of Ways to Climb Stairs
  8. Daily Interview Puzzle: Falling Dominoes
  9. Spreadsheet Columns
  10. Generate All IP Addresses

Comments (0)

    Be the first one to comment this page !


Page Edited: May 11 2024 14:36:49 | RSS Subscription
How to Cook a Perfect Steak? | <meta name="robots" content="noindex, follow" />