问题列表 - 第5921页

C#模仿覆盖赋值运算符(=)

我有一个简单的包装类我有一些问题.

它看起来像这样:

public class Wrapper<T>
{
  private T _value;

  public Wrapper<T>(T value)
  {
    _value = value;
  }

  public static implicit operator Wrapper<T>(T value)
  {
    return new Wrapper<T>(value);
  }

  public static implicit operator T(Wrapper<T> value)
  {
    return value._value;
  }
}
Run Code Online (Sandbox Code Playgroud)

我已经覆盖了T的隐式转换器,因此它的行为几乎就像是T本身的一个实例.

例如

Wrapper<int> foo = 42;
Run Code Online (Sandbox Code Playgroud)

但是,在将一个Wrapper实例分配给另一个时,我遇到了一个小问题,因为我只想分配第二个Wrapper类的值.

所以现在,我必须这样做:

Wrapper<int> foo = 42;
Wrapper<int> bar = (int)foo;
Run Code Online (Sandbox Code Playgroud)

或通过属性公开公开_value.

但是因为这是在一个库中,我不希望用户依赖于记住这个,你们有没有想过我怎么能模仿覆盖赋值运算符?

只更改指针的问题(就像将类实例分配给另一个时一样)是我有一个指向这些Wrapper对象的指针字典,所以我不能让它们一直在改变,因为字典会停止然后匹配.

我可以看看这有点令人困惑,所以如果我留下任何重要的东西,请随时问:-)

c# operator-overloading variable-assignment

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

如何在Java中测试互联网的可用性?

当我从url.openStream()中捕获异常时,我不想告诉互联网不可用的困难方式.

有一种简单的方法可以判断计算机是否通过Java连接到Internet?在这种情况下,"连接到互联网"意味着能够从特定网址下载数据.

如果我尝试从它下载​​但它不可用,那么该程序会挂起一点.我不想那么挂.因此,我需要一种快速的方式来查询网站是否可用.

java

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

学习嵌入式C/C++开发的最佳评估套件是什么?

我正在尝试改进我在ARM体系结构上的嵌入式C/C++开发.我最近从68K开发转向ARM,并希望利用我的业余时间深入挖掘平台并学习最佳实践,特别是在开发移动平台方面.

优选地,32位架构将有助于支持开发工具.学习过程中的一些乐趣可以增强我对平台的理解

c c++ embedded arm

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

如何缩放嵌入<object>标签的顽固SVG?

我有一些指定SVG文件widthheight以及viewbox这样的:

<svg width="576pt" height="432pt" viewBox="0 0 576 432" > ...
Run Code Online (Sandbox Code Playgroud)

但是如何在浏览器中以我决定的大小显示它们?我希望它们更小,并尝试过:

<object width="400" data="image.svg"></object>
Run Code Online (Sandbox Code Playgroud)

但后来我得到了可见的滚动条.

如果我改变SVG文件设置它的工作原理width,并height100%相反,但我想决定在HTML的大小,无论在SVG文件中使用什么尺寸.这可能吗 ?

html svg

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

将文本附加到属性而不是替换它?

我想在某个类的所有元素的title属性中添加一些文本.

jquery

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

使用jQuery检测Opera的正确方法是什么?

Amazon.com最近更新了他们的javascript,这导致一些Opera浏览器出现问题.

他们的浏览器检测代码看起来像这样,但它有问题:

    function sitbReaderIsCompatibleBrowser() {
        if (typeof(jQuery) == 'undefined') {
            return false;
        } else {
            var version = jQuery.browser.version || "0";
            var splitVersion = version.split('.');
            return (
                   (jQuery.browser.msie && splitVersion[0] >= 6)  // IE 6 and higher
                || (jQuery.browser.mozilla && (
                       (splitVersion[0] == 1 && splitVersion[1] >= 8) // Firefox 2 and higher
                    || (splitVersion[0] >= 2)
                   ))
                || (jQuery.browser.safari && splitVersion[0] >= 500) // Safari 5 and higher
                || (jQuery.browser.opera && splitVersion[0] >= 9) // Opera 5 and higher …
Run Code Online (Sandbox Code Playgroud)

javascript jquery opera browser-detection

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

如何使用Resharper启动加速VS2008?

毫无疑问,安装Resharper时VS2008的启动时间会增加一倍以上.

有没有人找到任何方法来减轻Resharper的惩罚至少一点点.

resharper visual-studio-2008

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

第五代语言?

我被问过这种语言,我的第一次天真尝试带来了两个列表

清单A)

一种基于约束而不是算法的编程语言来解决问题.例如.序言

清单B)

一种编程语言,包含可视化工具以帮助开发程序.例如.VB

深入挖掘互联网我觉得第一个更准确,但第二个仍然出现在结果中.

所以我的问题是:什么是第五代编程语言?第一种还是第二种?

我将不胜感激任何链接,文章或任何其他有用的资源,以了解有关该主题的更多信息.

编辑

我将这个带到主要问题:

奥斯卡:我在搜索主题时也发现了对Prolog,Scheme,Heskell,Lisp的引用?这些"更多"是第五还是那些像VB.

查理马丁:嗯,Lisp不能真正成为第五代语言,因为它比所有东西都要老,可能还有FORTRAN.而Scheme是Lisp的一种方言.但是,是的,我见过函数式语言--Haskell,ML,Erlang等 - 被称为"第五代" -

那么,基于约束的编程语言是否有可能被称为第五代?

谢谢.

programming-languages

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

以交互方式更改Emacs中的框架宽度

我知道您可以使用set-frame-width(add-to-list 'default-frame-alist '(width . 80))更改.emacs文件中的帧大小但是如何在Emacs启动后更改宽度(除了拖动框架的边缘)?

emacs

13
推荐指数
3
解决办法
7413
查看次数

允许php会话转移到子域

我为所有用户数据使用php会话(不是cookie,会话ID cookie除外),当用户访问他们的个人资料user.mydomain.com时,他们会立即"退出",直到删除子域.

有没有办法接受来自所有域的会话,只要它的*.mydomain.com

php apache cookies session

70
推荐指数
3
解决办法
7万
查看次数