0
我有一個函數,它對NSMutableArray執行一些數組操作。不知何故,在while函數的幾個循環之後,2個局部變量中的值是總垃圾。他們沒有被分配或操縱任何地方。具體方法如下:本地整數值在循環內隨機更改
這裏的功能:
-(void) normalize_path:(NSMutableArray *)path tool:(Tool)tool
{
NSUInteger last_accepted_point_index = 0;
NSUInteger current_point_index = 1;
while(current_point_index < [path count]){
VPoint * p1, * p2;
[[path objectAtIndex:last_accepted_point_index] getValue:&p1];
[[path objectAtIndex:current_point_index] getValue:&p2];
//float distance = [self distance_between:p1 and:p2];
// if(distance < MIN_POINT_DISTANCE){
// [path removeObjectAtIndex:current_point_index];
// }else{
// float opacity = tool.max_opacity - distance * tool.opacity_sensitivity;
// opacity = opacity <= tool.min_opacity ? tool.min_opacity : opacity;
// p2->opacity = opacity;
// float thickness = tool.max_thickness - distance * tool.thickness_sensitivity;
// thickness = thickness <= tool.min_thickness ? tool.min_thickness : thickness;
// p2->thickness = thickness;
// last_accepted_point_index = current_point_index;
// //current_point_index++;
// }
}
}
,這就是所謂只在一個地方像這樣:
//...
[self normalize_path:opath tool:pen];
//...
每次運行時產生不同的值。我很困惑!這裏發生了什麼?
當然!有時它只是隧道視覺,非常感謝 –
當它不是你的代碼/剛編寫的代碼時,發現這些東西總是更容易! –