问题列表 - 第42076页

是不是可以使C++应用程序"崩溃证明"?

假设我们在C++中有一个SDK,它接受一些二进制数据(如图片)并做一些事情.是不是可以使这个SDK"防崩溃"?由于用户传递的无效输入(如异常短的垃圾数据),我主要意味着操作系统在内存访问冲突时强行终止.

我没有使用C++的经验,但是当我用Google搜索时,我发现了几个听起来像解决方案的方法(使用向量而不是数组,配置编译器以便执行自动边界检查等).

当我提出这给开发者,他说,这仍然是不可能的..不,我不相信他,但即便如此,是怎么样的Java语言处理呢?我以为JVM每次都会执行边界检查.如果是这样,为什么不能手动在C++中做同样的事情?

更新
"防止崩溃"我并不是说应用程序不会终止.我的意思是它不应该突然终止没有发生的事情的信息(我的意思是它会转储核心等,但是不可能显示像"参数x无效"等消息吗?)

c++ crash fault-tolerance

6
推荐指数
1
解决办法
2248
查看次数

游戏开发的D编程语言

最近我一直很烦,因为我达到了C++(甚至0x)感觉非常有限的程度,所以我开始寻找替代方案.

忘记Java,C#,Python或Ruby.我仍然喜欢C++的低级特性,我不喜欢虚拟机.此外,我是一个游戏引擎开发,所以我必须要发展核心程序必须是非常快,而且最近我已经饿了码表现.C++ 对我来说几乎是一种语言,但是关于如何使用模板有很多例外,而GCC并没有像我希望的那样优化内容.

所以我正在考虑开始学习D.

你认为它足以满足我作为游戏开发者的需求吗?我很谨慎,因为我从来没有听说过D被用于那个.

谢谢!

d

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

如何在WPF中获取当前页面的所有子窗口

我有这种情况:我有一个页面可以打开多个窗口.有没有办法从当前页面检测所有窗口?

wpf

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

在iphone中使用什么软件在Talking Tom应用程序中制作和创建Cat

我很想知道用什么软件在iphone中的会说话的tom应用程序中创建3D Cat.它是用OpenGL ES完成的吗?

http://itunes.apple.com/us/app/talking-tom-cat/id377194688?mt=8

iphone 3d animation opengl-es

3
推荐指数
1
解决办法
7293
查看次数

通过反射改变私人最终领域

class WithPrivateFinalField {
    private final String s = "I’m totally safe";
    public String toString() {
        return "s = " + s;
    }
}
WithPrivateFinalField pf = new WithPrivateFinalField();
System.out.println(pf);
Field f = pf.getClass().getDeclaredField("s");
f.setAccessible(true);
System.out.println("f.get(pf): " + f.get(pf));
f.set(pf, "No, you’re not!");
System.out.println(pf);
System.out.println(f.get(pf));
Run Code Online (Sandbox Code Playgroud)

输出:

s = I’m totally safe
f.get(pf): I’m totally safe
s = I’m totally safe
No, you’re not!
Run Code Online (Sandbox Code Playgroud)

为什么它以这种方式工作,你能解释一下吗?第一个印刷品告诉我们私人"s"字段没有像我期望的那样被改变.但是如果我们通过反射获得该字段,则第二个打印显示,它会更新.

java reflection final

50
推荐指数
3
解决办法
5万
查看次数

如何在Matlab中从数据文件中绘制3D表面

我有一个包含3列x,y,z的数据文件,我想做一个3D图来可视化表面.

我本可以使用meshgrid,但问题是我只有那些y <= x的数据.有办法吗?

一个例子:

x    y    z
============
1    1    0.5
2    1    0.3
2    2    1.2
3    1    1.1
3    2    8.0
3    3    1.4
============

matlab

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

belongs_to和has_many属于同一个模型

我想知道是否有办法用rails做到这一点.基本上我有一个用户模型和一个事件模型.事件由用户创建,我希望在事件模型中具有指示谁创建事件的外键(user_id).此外,事件可以有许多用户参与其中,因此事件模型变得类似

belongs_to :user
has_many :users, :through => :guests #suppose i have the guest model 
Run Code Online (Sandbox Code Playgroud)

而用户模型看起来像

has_many :events, :through => :guests
Run Code Online (Sandbox Code Playgroud)

我还没有尝试过这个协会,但我希望能说

e = Event.find(1)
e.creator #returns the user who created this event
Run Code Online (Sandbox Code Playgroud)

代替

e.user
Run Code Online (Sandbox Code Playgroud)

有没有办法让我这样做?

ruby-on-rails associations ruby-on-rails-3

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

python:检查变量是否已定义并返回其值或返回其他值

我正在尝试使用此代码

result = arr['key1'] or arr['key2'] or arr['key3']
Run Code Online (Sandbox Code Playgroud)

解释:我希望从或者dict键得到结果值.键的可用性取决于环境.这不是关于None ..只能定义一个arr键...

那么有一个函数或方法,如is_defined()

我们如何在python中执行此操作?

UPDATE

我在这里遇到了一个新问题.代码1:

try:
   urlParams += "%s=%s&"%(val['name'], data.get(val['name'], serverInfo_D.get(val['name'])))
except KeyError:
   print "expected parameter not provided - "+val["name"]+" is missing"
   exit(0)
Run Code Online (Sandbox Code Playgroud)

代码2:

try:
   urlParams += "%s=%s&"%(val['name'], data.get(val['name'], serverInfo_D[val['name']]))
except KeyError:
   print "expected parameter not provided - "+val["name"]+" is missing"
   exit(0)
Run Code Online (Sandbox Code Playgroud)

请参阅serverInfo_D [val ['name']]和serverInfo_D.get(val ['name'])中的差异代码2失败,但代码1正常工作

数据

serverInfo_D:{'user': 'usr', 'pass': 'pass'} 
data: {'par1': 9995, 'extraparam1': 22}
val: {'par1','user','pass','extraparam1'}
Run Code Online (Sandbox Code Playgroud)

针对数据dict ..以及for循环中迭代val的所有代码引发异常

python exists

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

我应该在我的PHP代码中使用assert吗?

同事已经在我们的库中添加了几次assert命令,在那里我将使用if语句并抛出异常.(在此之前我从未听说过断言.)以下是他如何使用它的一个例子:

assert('isset($this->records); /* Records must be set before this is called. */');
Run Code Online (Sandbox Code Playgroud)

我会做的:

if (!isset($this->records)) {
    throw new Exception('Records must be set before this is called');
}
Run Code Online (Sandbox Code Playgroud)

通过在assert上阅读PHP文档,看起来建议您确保assert处于活动状态并在使用assert之前添加处理程序.我找不到他这样做的地方.

所以,我的问题是,鉴于上述情况,使用断言是一个好主意,我应该更频繁地使用它而不是if和例外吗?

另外,我们计划在各种项目和服务器上使用这些库,包括我们甚至可能不参与的项目(库是开源的).这在使用assert时有什么不同吗?

php assert

84
推荐指数
6
解决办法
2万
查看次数

如果我们关闭JVM,sql连接会自动关闭吗?

我创建了一个测试程序,它创建了20个线程,然后这些线程将打开许多sql连接.让我们说你正在从eclipse执行这个程序,现在如果你将关闭eclipse.这会关闭所有打开的SQL连接吗?如果不是那么这些会发生什么?它会在数据库端显示100个打开的连接吗?如果是,那么在这种情况下该怎么办?

java jvm database-connection

4
推荐指数
1
解决办法
5617
查看次数