小编M. *_*its的帖子

C++,一种"不可能"的行为

如果你已经编程了一段时间,那么你可能会注意到一些完全不可能的事情时不时发生,你确信没有可能的解释("这是一个编译器BUG !!").在你发现它是由什么造成的,虽然你像"oooohhh".

嗯,它恰巧发生在我身上:(

这里AuthDb 不是 NULL,而是一个有效的指针:

SingleResult sr(AuthDb, format("SELECT Id, Access, Flags, SessionKey, RealmSplitPreference FROM accounts WHERE Name = '%s'") % Escaped(account_name));
Run Code Online (Sandbox Code Playgroud)

在这里它神秘地变为NULL:

struct SingleResult : public BaseResult
{
    SingleResult(Database *db, const boost::format& query)  { _ExecuteQuery(db, query.str()); }
}
Run Code Online (Sandbox Code Playgroud)

请注意,这是下一个电话.两个屏幕截图可以解释得更好:http: //img187.imageshack.us/img187/5757/ss1zm.png
http://img513.imageshack.us/img513/5610/ss2b.png

编辑:AuthDb是一个全局变量.它本身一直指向正确的事物; 但是ptr Database*db的副本指向NULL.


ASM代码(遗憾的是我甚至不知道如何阅读它:/)

第一个截图

01214E06  mov         eax,dword ptr [ebp-328h] 
01214E0C  push        eax  
01214E0D  push        offset string "SELECT Id, Access, Flags, Sessio"... (13C6278h) 
01214E12  lea         ecx,[ebp-150h] 
01214E18  call        boost::basic_format<char,std::char_traits<char>,std::allocator<char> >::basic_format<char,std::char_traits<char>,std::allocator<char> > (11A3260h) 
01214E1D  mov         dword ptr …
Run Code Online (Sandbox Code Playgroud)

c++ assembly

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

Android:禁用最近的应用意图

我想禁用当您按住主页按钮时从图标触发的最近的应用程序意图.我正在检测,onCreate()如果意图是从快速启动对话框中触发,然后我打电话finish().

这需要在应用程序进入后台时finish()调用,以便在应用程序启动时它会通过onCreate().这需要在应用程序中的活动之间切换时进行战略编码.

我想我可以解雇finish()onResume()还检测其中的意图是从哪里来后,但如果快速启动意图可以简单地禁用可以消除了一堆不必要的编码.

可以禁用快速启动意图吗?

android android-intent quicklaunch

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

什么是中等信任等级?

任何机构可以简单地告诉我什么是中等信托级别?

它是什么意思:

"越来越多的ASP.NET主机提供商都在他们的servers.Therefore实施中等信任策略也使您的网站的工作(尽可能)在中等信任是强制执行的环境是很重要的."

谢谢

asp.net medium-trust

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

在C++中枚举k维超立方体顶点的最有效方法是什么?

基本问题: 我有一个维度盒子.我有一个上界和下界的向量.枚举顶点坐标的最有效方法是什么?

背景: 举个例子,假设我有一个三维盒子.获得的最有效算法/代码是什么:

vertex[0] = ( 0, 0, 0 ) -> ( L_0, L_1, L_2 )
vertex[1] = ( 0, 0, 1 ) -> ( L_0, L_1, U_2 )
vertex[2] = ( 0, 1, 0 ) -> ( L_0, U_1, L_2 )
vertex[3] = ( 0, 1, 1 ) -> ( L_0, U_1, U_2 )

vertex[4] = ( 1, 0, 0 ) -> ( U_0, L_1, L_2 )
vertex[5] = ( 1, 0, 1 ) -> ( U_0, L_1, …
Run Code Online (Sandbox Code Playgroud)

c++ binary enumeration bit-shift

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

什么是何时使用params作为方法参数的真实示例?

据我所知,params只是语法糖,"引擎盖下"只是给你一个你指定类型的数组.

首先,你什么时候使用它?

其次,为什么要使用它而不是仅仅声明一个数组参数?

.net c# params-keyword

5
推荐指数
2
解决办法
2593
查看次数

Javascript数组查找效率:关联与存储关联?

我一直在阅读,他们说联想数组不会给你与数组相同的效率.关联数组可以在O(N)时间内查找,其中数组可以在O(1)中查找.

这是我的问题:哪一个在快速查找值而不占用太多内存方面会更有效率?

联想:

var myVars=new Array(); 
myVars['test1'] = a;
myVars['test2'] = b;
myVars['test3'] = c;
... (up to 200+ values)

echo myVars['test2'];
Run Code Online (Sandbox Code Playgroud)

存储关联:

var myVars=new Array(); 
var TEST1 = 1;
var TEST2 = 2;
var TEST3 = 3;
... (up to 200+ values)

myVars[TEST1] = a;
myVars[TEST2] = b;
myVars[TEST3] = c;
... (up to 200+ values)

echo myVars[TEST2];
Run Code Online (Sandbox Code Playgroud)

javascript arrays performance

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

将文本添加到符合条件的ggplot geom_jitter点

如何将文本添加到使用geom_jittered渲染的点以标记它们?geom_text不起作用,因为我不知道抖动点的坐标.你能捕捉到抖动点的位置,以便传递给geom_text吗?

我的实际用法是绘制一个带有geom_jitter的boxplot来显示数据分布,我想标记异常点或符合特定条件的那些(例如,用于颜色的值的下限为10%) ).

一种解决方案是捕获抖动图的xy位置,稍后在另一层使用它,这可能吗?

[更新]

从Joran的回答中,解决方案是使用基本包中的抖动函数计算抖动值,将它们添加到数据帧并将其与geom_point一起使用.对于过滤,他使用ddply来获得一个过滤列(逻辑向量)并使用它来对geom_text中的数据进行子集化.

他要求提供最小的数据集.我刚刚修改了他的例子(标签列中的唯一标识符)

dat <- data.frame(x=rep(letters[1:3],times=100),y=runif(300),
                      lab=paste('id_',1:300,sep='')) 
Run Code Online (Sandbox Code Playgroud)

这是我的数据的joran示例的结果,并将ID的显示降低到最低的1% 带有抖动点和标签的boxplot,低1%值

这是对代码的修改,使其具有另一个变量的颜色并显示该变量的一些值(每个组的最低1%):

library("ggplot2")
#Create some example data
dat <- data.frame(x=rep(letters[1:3],times=100),y=runif(300),
                          lab=paste('id_',1:300,sep=''),quality= rnorm(300))

#Create a copy of the data and a jittered version of the x variable
datJit <- dat
datJit$xj <- jitter(as.numeric(factor(dat$x)))

#Create an indicator variable that picks out those
# obs that are in lowest 1% by x
datJit <- ddply(datJit,.(x),.fun=function(g){
               g$grp <- g$y <= quantile(g$y,0.01);
               g$top_q <- g$qual <= quantile(g$qual,0.01);
               g})

#Create a boxplot, overlay the jittered …
Run Code Online (Sandbox Code Playgroud)

r ggplot2 plyr

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

R:{ggplot2}:如何/我可以独立调整facet_grid图上的x轴限制?

我创建了一组三个单变量密度的分面 - 比较MCMC方法.如下所示

在此输入图像描述

目前,我不关心尾巴.那么如何更改上图中的x轴限制为:

c(-3,1)
c(-2,0)
c(-10, -8)
Run Code Online (Sandbox Code Playgroud)

这甚至可能吗?我已经从2009年开始阅读这个帖子,但它似乎没有用.这是实施的吗?

limits r facet ggplot2

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

运行具有指定最大运行时间的外部程序

我想在多线程python程序的每个线程中执行外部程序.

假设最大运行时间设置为1秒.如果启动过程在1秒内完成,则主程序捕获其输出以进行进一步处理.如果它没有在1秒内完成,主程序只是终止它并启动另一个新进程.

怎么实现这个?

python multithreading subprocess

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

如何使用ggplot2替换表达式?

我想获得beta的乳胶符号,下标为2.

以下代码:

idx <- 2;
ylab(eval(expression(paste("beta[",idx,"]",sep=""))))
Run Code Online (Sandbox Code Playgroud)

生成标签"beta [2]"而不是"\ beta_ {2}".我究竟做错了什么?

注意:要查看我想要的内容,只需使用ylab(expression(beta[2])),但我想从变量中提取值idx而不是使用硬编码值.

evaluation expression r ggplot2

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