小编Mic*_*ers的帖子

是否可以在C#中为泛型制作"此类型"?

一种理论问题.很长一段时间,如果你没有理论的心情,请随意跳过.

想象一下,你有两个类,一个继承自另一个.基类是通用的,并且有一个方法,在闭合类型中必须返回此闭合类型的某个实例.

像这样(注意文字中的???):

public class Adapter<T>
{
 public virtual ??? DoSomething()
 {
  ...
 }
}

public class AdaptedString : Adapter<String>
{
 public override AdaptedString DoSomething()
 {
  ...
 }
}
Run Code Online (Sandbox Code Playgroud)

我不能这样做,因为没有办法引用将从泛型类型派生的闭合类型.(对不起破解语言,只是不知道如何表达它.)没有设置关键字???来指定此方法将返回将从此泛型类型派生的类型实例.

相反,我可以使用显式将类型名称传递给通用基础的变通方法.但它看起来多余.

public class Adapter<TThis,T>
{
 public virtual TThis DoSomething()
 {
  ...
 }
}

public class AdaptedString : Adapter<AdaptedString,String>
{
 public override AdaptedString DoSomething()
 {
  ...
 }
}
Run Code Online (Sandbox Code Playgroud)

如果在基类中我需要访问TThis实例的成员,我必须添加一个约束.这一次看起来很难看 - 请注意约束:

public class Adapter<TThis,T>
 where TThis : Adapter<TThis, T>
{
 protected int _field; 

 ...

 public …
Run Code Online (Sandbox Code Playgroud)

.net c# generics

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

C:按键终止程序

在C中,我通常使用getch()函数来等待按下一个键然后结束程序,但是最近我读到了,因为它不是标准函数,所以使用它是不好的编程习惯.

因此,而不是以下:

int main() {
    dosomething();
    getch(); //wait for the user to see the results and press a key to end
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

我该怎么做才能更换getch

c

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

如何将DefaultListModel强制转换为List <Object>?

我必须将DefaultListModel(在列表框中)的所有元素放入一个List<Object>.我怎么能用Java做到这一点?

java

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

如何向Access报告添加按钮以将其导出到Excel/PDF?

如何向Microsoft Access报表添加按钮以将其导出到Excel/PDF?

ms-access vba report

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

在SQL Server Management Studio中更改窗口标题

有没有办法更改我的SQL Server Management Studio的窗口标题,以显示我连接到的当前服务器?

要知道我连接到哪个DB,我必须一直向上滚动以查看服务器的名称,这很痛苦.

也许有一个可用的插件或东西.

sql-server ssms

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

将微格式用于各种可能的事情有哪些实际好处?

如果我在他的网站上使用微格式来完成所有可能的事情,我的客户可以获得哪些实际好处?

如何向非技术客户解释这些好处?

html xhtml microformats semantic-web web-standards

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

从jQuery对象派生HTMLElement对象

我正在做一个相当详尽的DOM操作系列,其中一些元素(特别是表单元素)有一些事件.

我正在动态创建(实际上是从源元素克隆)几个<select>框并为它们分配一个change()事件.

更改事件执行,并且在事件的上下文中,"this"是HTML元素对象.

但是,此时我需要做的是确定此HTML元素对象的上下文.我将这些对象存储为各种数组中的jQuery实体,但很明显

[HTMLElement Object] != [Object Object]

而诀窍在于我无法转换$(this)并进行有效的比较,因为这会创建一个新对象并且指针会有所不同.

所以......我一直在反对这个问题.在过去,我已经能够通过进行innerHTML比较来规避这个问题,但在这种情况下,我比较的对象是100%相同的,只是有很多.因此,我需要一个可靠的比较.

如果我能以某种方式从我的原始jQuery对象派生HTMLElement对象,这将很容易.

思想,其他想法?救命.:(

javascript comparison jquery dom

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

如何加快Visual Studio 2010文本编辑器的渲染速度?

Visual Studio 2010转移到使用WPF渲染编辑器.当我编辑代码时,这会导致速度减慢,特别是如果我正在运行其他使用其他视频功能的东西.

我怎样才能加快速度呢?一个新的视频卡?新司机?设置?

WPF使用什么技术来渲染以及哪些视频卡可以补充它?

wpf visual-studio-2010

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

DataGridView 单元格编辑

您好,
我有一个绑定到 XML 源的 DataGridView。

  1. 我在编辑单元格时遇到问题。单击的单元格将被选中,并且在编辑它时,默认情况下我们会覆盖它。我的要求是它应该准备好进行编辑,并且在单击时不被选中。
  2. 我想在按下“tab”键时动态生成一行。

我怎样才能实现这个目标?

.net c# datagridview winforms

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

是否有可能将Firefox插件从XPI解码到XUL?

是否可以将XPI绑定格式的firefox插件解码为本地语言XUL?

我只是想学习如何制作插件.所以,我想如果我可以解码一个Firefox插件,那么我可以学习插件架构!

firefox decompiling xul xpi firefox-addon

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