To the Top
File:  root - diary - 2007 - 2007-06 - 2007-06-19_01.19AM.html
Tags: 学习笔记, Learning Notes, | English | Home Page | Category: Computing | 20656 Views, 48801 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 | 20656 Views, 48801 Search Bots | 114 Words Subscribe to Feed Burner

Related Articles

  1. Two Tricks of Delphi
  2. Spreadsheet Columns
  3. Number of Ways to Climb Stairs
  4. Daily Interview Problem: Word Ordering in a Different Alphabetical Order
  5. Daily Interview Problem: Longest Substring With K Distinct Characters
  6. Design Tic-Tac-Toe
  7. Maximum In A Stack
  8. Spreadsheet Column Title
  9. Daily Interview Problem: Largest Product of 3 Elements I
  10. Compare Version Numbers

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" />