在我的iPhone应用程序中,我将一些值(时间戳)传递给C ++库int64_t
。在此之前,我将NSArray
中的值(double
存储为int64_t
)转换为int64_t f4 = (int64_t)[arr objectAtIndex:0];
,如.mm文件中的值:
$(document).ready(function(){
//Get the figures width
var figure_width = $(".project-index figure").css("width").replace("px", "");
//Get num figures
var num_figures = $(".project-index figure").length;
//Work out how manay figures per row
var num_row_figures = Math.ceil(num_figures / 2);
//Get the total width
var row_width = figure_width * num_row_figures;
//Set container width to half the total
$(".project-index").width(row_width);
x = null;
y = null;
$(".project-index div").mousedown(function(e){
x = e.clientX;
y = e.clientY;
});
$(".project-index div").mouseup(function(e){
if(x == e.clientX && y == e.clientY){
//alert($(this).next().attr("href"));
window.location.assign($(this).next().attr("href"));
}
x = y = null;
});
});
// Drag-on content
jQuery(document).ready(function(){
jQuery('#main').dragOn();
});
您可以在图片上看到的问题(请参阅链接)是,显示的变量 f4 (左)的选定值与其右侧的打印值不同。此外,如果我比较变量 f1 和 f4 , f4 应该大于 f1 ,与存储的值相关,但是它不是。 Var f1 从库中的函数返回,调试视图显示正确的值。
答案 0 :(得分:2)
NSArray
(以及所有Objective-C集合类)只能保存对象。这意味着如果您想在集合中存储数字,则需要将它们包装在NSNumber
对象中。例如:
[arr addObject:@(number)];
并检索值:
int64_t value = [arr[index] longLongValue];
但是要回答这个问题,您看到的值可能是NSNumber
个对象的地址,而不是其中包含的值。