问题列表 - 第30992页

返回带泛型的对象子类

使用抽象类,我想定义一个为子类返回"this"的方法:

public abstract class Foo {
    ...
    public <T extends Foo> T eat(String eatCake) {
        ...
        return this;
    }
}  

public class CakeEater extends Foo {}
Run Code Online (Sandbox Code Playgroud)

我希望能够做到这样的事情:

CakeEater phil = new CakeEater();
phil.eat("wacky cake").eat("chocolate cake").eat("banana bread");
Run Code Online (Sandbox Code Playgroud)

可以说香蕉面包会抛出IllegalArgumentException,并带有"Not a cake!"的消息.

java generics subclass parameterized return-type

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

私有变量只需要在构造函数中初始化.怎么样?

我有一个类,Foo带有一个需要参数的构造函数,另一个类Bar带有一个Foo私有变量

 class Foo 
 {
      public:
      Foo(string);
 }

 class Bar
 {
      public:
      Bar() { this->foo = Foo("test") }

      private:
      Foo foo;
 }
Run Code Online (Sandbox Code Playgroud)

但是,当我尝试编译它时,我得到一个编译错误,没有Foo::Foo()构造函数.看起来类中的私有变量fooBar获取构造函数中指定的值之前被初始化.

我怎么能有一个foo等待在我的构造函数中初始化的私有变量?

c++ variables constructor private

4
推荐指数
2
解决办法
4869
查看次数

Rails:使用页面刷新重置表单字段

我有一个Rails表单,它有一个observe_field,当下拉列表发生变化时会执行ajax请求.ajax导致表单被重新呈现(表单是部分的),带有一个额外的参数,导致页面上的某些文本发生变化.一切正常,但当我刷新页面(我正在运行firefox)时,文本被重置,下拉列表不会更改其值.因此,我最终得到的选择值与动态文本不对应.

我已经尝试设置下拉列表的默认选择值,但由于某种原因,firefox不会通过页面刷新更改该值.

这是视图中下拉列表的代码:

<%= select_tag :category, options_from_collection_for_select(@categories, :letter, :name, @letter) %>

动态设置@letter并控制页面上的动态文本.

这是在页面刷新时呈现的操作:

def new

@part = Part.new
@letter = params[:letter] || "A"
@part.cpn = Part.find_next_cpn(@letter)
@categories = PartCategory.find(:all)
respond_to do |format|
  format.js
  format.html
end
Run Code Online (Sandbox Code Playgroud)

end

<%= select_tag :category, options_from_collection_for_select(@categories, :letter, :name, @letter) %>

def new

@part = Part.new
@letter = params[:letter] || "A"
@part.cpn = Part.find_next_cpn(@letter)
@categories = PartCategory.find(:all)
respond_to do |format|
  format.js
  format.html
end
Run Code Online (Sandbox Code Playgroud)

end

我需要一种方法来保留动态文本信息或重置下拉菜单.

ruby ruby-on-rails

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

我如何在运行时检查单声道

默认情况下,mono不信任任何SSL连接.因此,如果在单声道上运行我想要发送消息而不是抛出异常.

我如何检查我是否在运行时在单声道下运行?(因为在编译时CLI不会知道)

mono

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

aspx.designer.cs它是如何工作的?

我是一个真正的初学者,所以我的问题可能会出现荒谬的.但是,我不知道如何将文件.aspx.designer.cs工程..这是我第一次与包含文件的解决方案工作.aspx.designer.cs每个页面.所以我理解它是.aspx中用于代码隐藏的控件声明.

这是我的问题:

为什么有时解决方案没有.aspx.designer.cs文件?(文件是隐藏的还是不存在?)

我经常遇到这些文件的问题,当我在.aspx代码中添加一些时,它们不会自动重新创建控件的声明,我做错了什么?

asp.net visual-studio

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

如何创建用于解析阿拉伯日期的正则表达式

我正在开发一个运行一系列正则表达式的程序,试图从网页中查找DOM中的日期.例如,在www.engadget.com/2010/07/19/windows-phone-7-in-depth-preview/,我会将"2010年7月19日"与我的正则表达相匹配.在我访问阿拉伯语网页之前,各种格式和语言的情况都很顺利.例如,请考虑http://islammaktoob.maktoobblog.com/.2010年7月18日的日期显示在帖子顶部的阿拉伯语中,但我无法弄清楚如何匹配它.有没有人有匹配阿拉伯语日期的经验?如果有人可以发布他们用来匹配该阿拉伯语日期的示例或正则表达式,那将非常有帮助.谢谢!

更新:

越来越近:

String fromTheSite = "????? ????? ????? ? ?? 18 ???? 2010 ??????: 09:42 ?"; 
    NamedMatcher infoMatcher = NamedPattern.compile("(?<Day>[0-3]?[0-9]) (?<Month>?????|??????|????|?????|?????|????|?????|?????|?????|?????|?????|??????|??????|??????|??????|????? ??????|????|????|?????|????|??????|????|??|?????|????? ?????|????? ??????|????? ?????) (?<Year>[1-2][0-9][0-9][0-9]) ", Pattern.CANON_EQ).matcher(fromTheSite);
    while(infoMatcher.find()){
        System.out.println(infoMatcher.group());
        System.out.println(infoMatcher.group("Day"));
        System.out.println(infoMatcher.group("Month"));
        System.out.println(infoMatcher.group("Year"));
    }
Run Code Online (Sandbox Code Playgroud)

给我

18 ???? 2010
18
????
2010
Run Code Online (Sandbox Code Playgroud)

为什么匹配出现乱序?

java regex datetime bidi arabic

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

具有赋值语义的非拥有者

我有一个类应该持有对某些数据的引用,而不拥有该数据(即保证实际数据不会超出范围).特别是,该类无法复制 - 数据大小容易达到几千兆字节.

现在,通常的实现(我假设)是对数据的引用:

struct holder_ref {
    type const& value;

    holder_ref(type const& value) : value(value) { }
};
Run Code Online (Sandbox Code Playgroud)

(请注意,const这个问题绝对没有关系).

现在,我绝对需要这个类可以分配(即有一个工作operator =).我认为这是一个相当普遍的问题,但我不记得(如果有的话)我之前是如何解决它的.

问题是无法分配引用,并且根本无法解决此问题.我提出的唯一解决方案是使用placement new代替赋值运算符:

// x = other_x; gets replaced with:
x.~T();
new (&x) T(other_x);
Run Code Online (Sandbox Code Playgroud)

现在,这是有效的,并且符合标准.但它肯定是丑陋的.不 - 不可接受.

所以我正在寻找其他选择.一个想法是使用指针,但我不确定我的构造函数是否确实可以保证工作(由于我必须遵守的接口,传递指针是不可能的):

struct holder_ptr {
    type const* value;

    // Is this legal?
    holder_ptr(type const& value = 0) : value(&value) { }
};
Run Code Online (Sandbox Code Playgroud)

但是,如果可能的话,我宁愿使用参考.只 - 如何实现赋值运算符?

struct holder_ref {
    type const& value;

    holder_ref(type const& value = 0) …
Run Code Online (Sandbox Code Playgroud)

c++ reference assignment-operator

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

RabbitMQ消息使用者停止使用消息

我们的团队处于尖峰冲刺阶段,可以在ActiveMQ或RabbitMQ之间进行选择.我们制作了2个小生产者/消费者峰值,发送一个包含16个字符串,时间戳和2个整数的数组的对象消息.我们的开发机器上的峰值是可以的(消息很好用).

然后是替补席.我们首先注意到,在我们的机器上,当我们发送大量消息时,消费者有时会挂起.它就在那里,但是垃圾堆积在队列中.

当我们进入板凳平台时:

  • 集群的2台rabbitmq机器4核/ 3.2Ghz,4Gb RAM,由VIP负载均衡
  • 在rabbitmq机器上运行的一到六个消费者,将消息保存在mysql DB中(DB的相同类型的机器)
  • 在12台AS机器(tomcat)上运行的12个生产者,在另一台机器上运行的jmeter攻击.在产生相同RabbitMQ消息负载的servlet上,负载大约是每秒600到700个http请求.

我们注意到有时候,消费者会挂起(好吧,他们没有被阻止,但他们不再消费消息).我们可以看到,因为每个消费者在数据库中节省大约100 msg /秒,所以当一个人停止消费时,每秒在DB中保存的整体消息会以相同的比率下降(如果让3个消费者停止,我们会下降到大约600 msg /秒至300毫秒/秒).

在此期间,生产商可以,并仍然以jmeter速率(约600毫克/秒)生产.消息在队列中并由消费者保持"活着".

我们先将所有servlet加载到生成器,然后逐个启动所有使用者,检查连接是否正常,然后运行jmeter.

我们正在向一个直接交换机发送消息.所有消费者都在监听与交易所有关的一个持久队列.

这一点对我们的选择很重要.你有没有看过Rabbitmq,你知道发生了什么吗?

谢谢您的回答.

benchmarking amqp rabbitmq

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

是否可以使用Linq中的ExecuteQuery返回多个结果集到Sql?

我知道您可以从存储过程和设计器生成的方法返回多个结果.

但是,我正在尝试使用ExecuteQuery做同样的事情,但它似乎不可能.有没有人试过或知道这是否可行?

基本上我正在尝试运行ad-hoc存储过程.ad-hoc是指在设计时不可用的存储过程.

.net sql-server stored-procedures executequery linq-to-sql

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

是否有一个Javascript库来绘制电路图?

我正在寻找一个可以在现代(HTML5)浏览器中绘制电气/电子电路图的开源Javascript库 - 有这样的事吗?它应该有典型的电路元件,如电阻器,电压和电流源,电容器等.提前感谢任何帮助.

javascript visualization

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