问题列表 - 第19696页

为什么我不应该在JNI中重用jclass和/或jmethodID?

这是一个与前一篇文章相关的问题,但这篇文章已经解决,现在我想改变问题的方向.

使用JNI时,有必要询问JNIEnv对象jclass以及jmethodID将在C/C++代码中使用的每个类和方法.为了清楚起见,我想从C/C++调用Java构造函数或方法.

由于从Java到C/C++(反之亦然)的通信成本很高,我最初认为最小化这种方法的一种方法是重用jclassjmethodID.因此,我将此实例保存在全局变量中,如下所示:

jclass    someClass  = NULL;
jmethodID someMethod = NULL;

JNIEXPORT jobject JNICALL Java_example_method1(JNIEnv *env, jobject jobj) {
    // initialize someClass and someMethod if they are NULL
    // use someClass and someMethod to call java (for example, thru NewObject)
}

JNIEXPORT jobject JNICALL Java_example_method2(JNIEnv *env, jobject jobj) {
    // initialize someClass and someMethod if they are NULL
    // use someClass and someMethod to call java again
} …
Run Code Online (Sandbox Code Playgroud)

java java-native-interface

35
推荐指数
3
解决办法
2万
查看次数

IE中的jQuery 1.4更改事件错误

我有这个简单的选择:

<select name="zlecenia_index_icpp" id="items_per_page">  
    <option value="10">10</option>  
    <option value="25" selected="selected">25</option>  
    <option value="50">50</option>  
</select>
Run Code Online (Sandbox Code Playgroud)

在它上面是:

$('#items_per_page').change(function(){  
    var controller_action = this.name.replace(/_/g, '/');  
    location.href = config.base_url + '/' + controller_action + '/'+this.value;  
});
Run Code Online (Sandbox Code Playgroud)

它曾经在jQuery 1.3中工作,但在1.4中,只要我点击选择框就会触发change事件.除了回到1.3之外还有什么解决方案吗?


这似乎是一个错误,它已被报告给jQuery:

http://dev.jquery.com/ticket/5869

已经应用了一个补丁,它将成为jQuery 1.4.1的一部分.

http://github.com/jquery/jquery/commit/435772e29b4ac4ccfdefbc4045d43f714e153381

jquery internet-explorer jquery-1.4

7
推荐指数
1
解决办法
4036
查看次数

iPhone:UITableView不令人耳目一新

我已经阅读了很多关于UITableViews的主题没有在iPhone上刷新,但找不到符合我情况的任何内容,所以我正在寻求帮助.

在我的类中,它扩展了UIViewController,我有一个TableView和一个'ElementList'(它是NSMutableArray的包装器)用作数据源.

一个单独的线程通过'updateList:'方法向数组添加一个新元素.发生这种情况时,我希望自动刷新tableView,但这不会发生.

通过调试我的应用程序,我可以看到'cellForRowAtIndexPath'永远不会被调用,我无法找出原因.

我试图添加一个Observer,它调用'reloadTableView'方法(它实际上被调用),但tableView没有更新.

这是我的代码:

#import <UIKit/UIKit.h>

@interface ListViewController : UIViewController <UITableViewDelegate, UITableViewDataSource>
{
    UITableView *tableView;
    ElementList *elementList;   // Wrapper for NSMutableArray
}

// Called by someone else, triggers the whole thing
-(void)updateList:(Element *)element;

// Added out of desperation
-(void)reloadTableView;

@end


@implementation ListViewController

-(void)loadView
{
    // Create the TableView
    tableView = [[UITableView alloc] initWithFrame:[[UIScreen mainScreen] applicationFrame] style:UITableViewStylePlain];
    assert(tableView != nil);
    tableView.delegate = self;
    tableView.dataSource = self;
    [tableView reloadData];

    self.view = tableView;

    // Added out of desperation 
    [[NSNotificationCenter defaultCenter] addObserver:self …
Run Code Online (Sandbox Code Playgroud)

iphone refresh uitableview

2
推荐指数
1
解决办法
9326
查看次数

在中缀表示法中解析表达式的算法是什么?

我想在PHP中解析布尔表达式.如:

A and B or C and (D or F or not G)
Run Code Online (Sandbox Code Playgroud)

这些术语可以被视为简单标识符.它们将具有一些结构,但解析器不需要担心.它应该只识别关键字and or not ( ).其他一切都是一个术语.

我记得我们在学校写过简单的算术表达式评估器,但我不记得它是如何完成的.我也不知道在Google/SO中要查找哪些关键字.

一个现成的库会很好,但是我记得算法非常简单,所以自己重新实现它可能很有趣也很有教育意义.

php language-agnostic algorithm parsing expression-trees

9
推荐指数
2
解决办法
6679
查看次数

将元素插入二进制最小堆

如果我插入项目:10,12,14,1,6到二进制最小堆一个项目接一个怎么样的结果,我的问题是以下

当我开始时我有:

10
Run Code Online (Sandbox Code Playgroud)

然后

   10
  /
 12
Run Code Online (Sandbox Code Playgroud)

然后

   10
  /  \
 12  14
Run Code Online (Sandbox Code Playgroud)

然后

   1
  / \
 10 14
 /
12
Run Code Online (Sandbox Code Playgroud)

但这不对,那么正确的方法是什么?

注意:这是一个功课问题,我试图理解这个概念,如果你觉得不能解决问题(这不是完整的问题)请提供一个类似问题的例子.

binary-tree

7
推荐指数
1
解决办法
2万
查看次数

如何访问具有美元符号的PHP对象属性?

我有一个PHP对象,其中包含一个带有美元($)符号的属性.

如何访问此属性的内容?

示例:

echo $object->variable; // Ok

echo $object->variable$WithDollar; // Syntax error :-(
Run Code Online (Sandbox Code Playgroud)

php oop

13
推荐指数
1
解决办法
6465
查看次数

使用STL容器存储Treeview数据

我正在寻找一个C++ STL容器类来保持treeview父/子节点字符串,但是当从树控件中删除一个节点时,我是否已遍历所有容器类元素以找到所选容器类,然后将其删除?在容器中保存数据的最佳方法是什么?

c++ treeview stl

0
推荐指数
1
解决办法
210
查看次数

使用模板制作不同长度的物品?

情况是我有一个项目数组,项目里面有一个数组.但是,我想在声明时将数组放在可变长度内,但在编译时可以调整大小.

所以我想要这样的东西:

class2<16>[] = new class2<16>[2048*1024];
Run Code Online (Sandbox Code Playgroud)

管他呢.希望你明白了.

显然使其内部有固定数组很容易,但问题是数组可能是巨大的,所以我不希望有2048*1024次调用new,所以我绝对不希望class2调用任何新的或删除方法.

这甚至可能吗?

c++ templates

2
推荐指数
1
解决办法
129
查看次数

Visual Studio中仅调试的类和资源 - 是否可能?

是否可以在Visual Studio中向项目添加一个类,并且只为该项目的Debug配置构建该类?也就是说,它根本不会出现在Release版本中.

如果可能的话,是否也可以为资源做同样的事情?

我正在考虑仅在Debug配置中运行但是从程序集中删除以便发布的测试类.

c# debugging visual-studio-2008 visual-studio

3
推荐指数
2
解决办法
3954
查看次数

优化字节对编码

注意到大文本压缩基准测试中缺少字节对编码(BPE),我很快就对其进行了简单的文字实现.

压缩比 - 考虑到没有进一步处理,例如没有霍夫曼或算术编码 - 令人惊讶地好.

然而,我的琐碎实现的运行时间不是很好.

如何优化?是否可以一次性完成?

compression algorithm optimization

7
推荐指数
1
解决办法
4655
查看次数