问题列表 - 第17502页

避免切片异常类型(C++)

我正在为我的库设计一个C++的异常层次结构."层次结构"是从std :: runtime_error派生的4个类.我想避免异常类的切片问题,因此使复制构造函数受到保护.但显然gcc需要在抛出它们的实例时调用复制构造函数,因此抱怨受保护的复制构造函数.Visual C++ 8.0编译相同的代码.是否有任何可移植的方法来解决异常类的切片问题?标准是否说明实现是否可以/应该要求抛出要抛出的类的复制构造函数?

c++ gcc exception derived object-slicing

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

1对1票:计算评级(Flickchart.com)

我不想评分等级为1到10的项目,而是希望进行1对1"战斗".两个项目彼此相邻显示,您可以选择一个您喜欢的项目.基于这些"战斗"结果,算法应计算每个项目的评级.

你可以在Flickchart.com上看到这种方法,这种方法对电影进行评级.

它看起来像这样:

截图http://i45.tinypic.com/2nv3ugy.jpg

如你所见,如果物品赢得"战斗",物品就会向上推.排名总是根据"战斗"结果而变化.但这不能仅仅取决于胜利报价(这里是54%),因为对抗"泰坦尼克号"比赢得"25小时"左右更难.

有一些事情对我来说还不太清楚: - 收视率是如何计算的?你如何决定哪部电影在排名中位居第一?你必须考虑一个项目获胜的频率以及被打败的项目有多好. - 如何选择哪些项目"打架"?

当然,你无法告诉我Flickchart是如何做到的.但也许你可以告诉我它是如何做到的.提前致谢!

statistics charts voting ranking

15
推荐指数
2
解决办法
2410
查看次数

如何安全地解决此Java上下文类加载器问题?

我的数百名用户中只有一个在启动Java桌面应用程序时遇到问题.只有三分之一的时间才开始.另外三分之二的时间在启动时抛出NullPointerException:

Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
    at java.util.Hashtable.put(Hashtable.java:394)
    at javax.swing.JEditorPane.registerEditorKitForContentType(JEditorPane.java:1327)
    at javax.swing.JEditorPane.registerEditorKitForContentType(JEditorPane.java:1309)
    at javax.swing.JEditorPane.loadDefaultKitsIfNecessary(JEditorPane.java:1387)
    at javax.swing.JEditorPane.getKitTypeRegistry(JEditorPane.java:1344)
    at javax.swing.JEditorPane.getEditorKitClassNameForContentType(JEditorPane.java:1340)
    at javax.swing.JTextPane.<init>(JTextPane.java:76)
    at myapp.Launcher$1.run(Launcher.java:13)
    at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
    at java.awt.EventQueue.dispatchEvent(EventQueue.java:633)
    at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:296)
    at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:211)
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:201)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:196)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:188)
    at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
Run Code Online (Sandbox Code Playgroud)

我已经按照堆栈跟踪找到原因

Thread.currentThread().getContextClassLoader()
Run Code Online (Sandbox Code Playgroud)

在JEditorPane中返回null.

谷歌搜索显示,这是一个零星的,非常罕见的,神秘的问题,影响了一些人.

我的问题是,作为一种解决办法,我能做些什么?如果我在创建EditorPane之前调用它,这可能会有效:

Thread.currentThread().setContextClassLoader(MyClass.class.getClassLoader());
Run Code Online (Sandbox Code Playgroud)

但我并不像我想的那样真正理解类加载器(并且我试图更好地理解它们).我觉得改变EDT中的contextClassLoader可能会产生不良影响.

任何想法我能做什么?

编辑:我与熟悉Java ClassLoaders的人有一些通信.这似乎是一个模糊的ClassLoader竞争条件.也就是说,Java中的一个错误.

java classloader contextclassloader

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

在C#中查找表的最有效方法是什么?

在C#中查找表的最有效方法是什么?

我有一张查询表.有点像

0 "Thing 1"
1 "Thing 2"
2 "Reserved"
3 "Reserved"
4 "Reserved"
5 "Not a Thing"
Run Code Online (Sandbox Code Playgroud)

因此,如果有人想要"Thing 1"或"Thing 2",他们会传递0或1.但是他们也可以传递其他内容.我有256种这类东西,其中200种是保留的.

那么最有效的想法是什么呢?

  • 字符串数组或字典变量,用于获取所有值.然后取整数并返回该位置的值.

我对此解决方案的一个问题是所有"保留"值.我不想创建那些冗余的"保留"值.或者我可以对所有"保留"的所有地方都有一个if语句,但它们现在可能只有2-3,可能是2-3,40-55以及字节中的所有不同位置.这个if语句会变得非常快速

  • 我想的另一个选择是switch语句.而且我将获得所有50个已知值并且将通过默认值保留值.

我想知道这是否比创建一个字符串数组或字典更多的处理,只是返回适当的值.

  • 别的什么?还有另一种方法可以考虑吗?

c# performance lookup-tables

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

如何保存程序的进度,以后再恢复?

您可能知道很多程序,例如一些密码破解程序,我们可以在它们运行时停止它们,当我们再次运行程序时(无论是否输入相同的输入),它们都能够从他们继续的地方继续离开了.我想知道这些程序使用的是哪种技术

[编辑]我正在编写一个主要基于递归函数的程序.据我所知,我认为在我的程序中保存这些状态是非常困难的.是否有任何技术,以某种方式,保存我的程序中涉及的堆栈内容,函数调用和数据,然后当它重新启动时,它可以运行,就好像它没有被停止?这只是我心中的一些概念,所以请原谅我,如果它没有意义......

process suspend

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

根据背景颜色确定字体颜色

给定一个系统(例如网站),允许用户自定义某些部分的背景颜色而不是字体颜色(以保持选项数量最少),有没有办法以编程方式确定"光"或"黑暗的"字体颜色是必要的?

我确定有一些算法,但我对颜色,光度等知之甚少,无法自己解决.

language-agnostic algorithm colors

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

所有模式下的Viper模式

我正在从vi移动到emacs,并且使用viper和vimpulse,当我C-w C-w进入窗口并且无法使用相同的命令返回原始窗口时它会变得非常烦人,因为另一个缓冲区(可能是帮助缓冲区)不是在Viper模式下.我怎样才能解决这个问题?

我尝试将其他模式添加到viper配置中,并使用默认情况下使用挂钩启动viper模式:

(add-to-list viper-vi-state-mode-list 'help-mode)
(add-hook 'help-mode (lambda () (setq viper-mode t)))

但这些命令都没有奏效.实际上,第一个产生了以下错误:

Warning (initialization): An error occurred while loading `/home/konrad/.emacs.d/init.el':

Wrong type argument: symbolp, (fundamental-mode ...

除此之外C-w C-w,我也错过了无法使用hjkl进行导航.有没有办法重用viper设置的键绑定,而不是为每种模式重新绑定它们?

emacs vimpulse viper viper-mode

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

现代处理器上的内存对齐?

我经常看到如下代码,例如,在内存中表示一个大位图:

size_t width = 1280;
size_t height = 800;
size_t bytesPerPixel = 3;
size_t bytewidth = ((width * bytesPerPixel) + 3) & ~3; /* Aligned to 4 bytes */
uint8_t *pixelData = malloc(bytewidth * height);
Run Code Online (Sandbox Code Playgroud)

(也就是说,一个位图被分配为一个连续的内存块,它bytewidth与一定数量的字节对齐,最常见的是4.)

然后通过以下方式给出图像上的一个点:

pixelData + (bytewidth * y) + (bytesPerPixel * x)
Run Code Online (Sandbox Code Playgroud)

这引出了两个问题:

  1. 对齐像这样的缓冲区会对现代处理器产生性能影响吗?我应该担心对齐,还是编译器会处理这个问题?
  2. 如果它确实有影响,有人可以指向我找到各种处理器的理想字节对齐的资源吗?

谢谢.

c memory performance memory-management alignment

12
推荐指数
2
解决办法
6064
查看次数

什么是Flash AS3中的dispatchEvent?

大家好,我想知道什么是dispatchEventAS3.谷歌搜索时我没有任何想法.:(所以请帮助我

编辑1:

public static  const SET_VOLUME:String = "setVolume";

private function onclick(evt:MouseEvent):void {
            soundClip.scaleX = 0;
            dispatchEvent(new Event(SET_VOLUME));

        }
Run Code Online (Sandbox Code Playgroud)

这意味着什么?(

flash actionscript actionscript-2 actionscript-3

8
推荐指数
3
解决办法
4万
查看次数

Jquery淡化对表单输入焦点的影响

这个问题类似于我之前的悬停问题(将css悬停转换为jquery悬停)但答案会有所不同,因为它涉及一个点击功能和两个bgs.

我正在构建一个联系页面,当用户点击其中一个输入字段时,我希望输入的背景从一个bg淡化到另一个bg.你可以在这里看到它:联系页面

我目前已添加此代码,以使大多数输入在点击时淡入淡出,但textarea不会工作:

<script type="text/javascript">

    if(window.jQuery){jQuery(function(){
        (function(){ jQuery('input.name').bind('focus', function(event, ui){var target = jQuery('input.name'); target.animate({'backgroundColor':'#b1b1b1'},250,'linear')});})();
        (function(){ jQuery('input.name').bind('blur', function(event, ui){var target = jQuery('input.name'); target.animate({'backgroundColor':'#CFD2D2'},250,'linear')});})();
        (function(){ jQuery('input.email').bind('focus', function(event, ui){var target = jQuery('input.email'); target.animate({'backgroundColor':'#b1b1b1'},250,'linear')});})();
        (function(){ jQuery('input.email').bind('blur', function(event, ui){var target = jQuery('input.email'); target.animate({'backgroundColor':'#CFD2D2'},250,'linear')});})();
        (function(){ jQuery('input.website').bind('focus', function(event, ui){var target = jQuery('input.website'); target.animate({'backgroundColor':'#b1b1b1'},250,'linear')});})();
        (function(){ jQuery('input.website').bind('blur', function(event, ui){var target = jQuery('input.website'); target.animate({'backgroundColor':'#CFD2D2'},250,'linear')});})();
        (function(){ jQuery('input.area').bind('focus', function(event, ui){var target = jQuery('input.area'); target.animate({'backgroundColor':'#b1b1b1'},250,'linear')});})();
        (function(){ jQuery('input.area').bind('blur', function(event, ui){var target = jQuery('input.area'); target.animate({'backgroundColor':'#CFD2D2'},250,'linear')});})();
    })};
</script>
Run Code Online (Sandbox Code Playgroud)

有关如何正确执行此操作以及使textarea正常工作的任何想法?

jquery textarea jquery-selectors

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