好的,所以我有一个类似于下面代码的场景,我有一个实现IComparable和子类的父类.
class Parent : IComparable<Parent>
class Child : Parent
Child a = new Child();
Child b = new Child();
a.CompareTo(b);
Run Code Online (Sandbox Code Playgroud)
现在上面的工作正常,我可以比较两个子对象彼此没问题
List<Child> l = new List<Child>();
l.Add(b);
l.Add(a);
l.Sort();
Run Code Online (Sandbox Code Playgroud)
上面的失败虽然有InvalidOperationException.有人可以解释为什么当子类确实实现IComparable接口时这种类型无效,或者至少在我看来它确实如此.
好的,这是我的实际父类的CompareTo实现
public int CompareTo(IDType other)
{
return this.Name.ToString().CompareTo(other.ToString());
}
Run Code Online (Sandbox Code Playgroud) 有没有人知道使用命令行远程管理Windows XP机器的好方法?
目前,它唯一需要做的就是能够安装应用程序/补丁,并将文件传输到机器或从机器传输文件,并且安装注册表补丁也会很好.
目前我们使用一个使用NetMeeting的可怕的黑客攻击解决方案,过去我已经使用SSH for Windows(在Windows 2000时)将概念证明放在一起,但它并不能令我满意并且非常错误.这可能是SSH守护进程的结果,我运行的更多.
我对任何事情都很开放,但是使用SSH的解决方案是理想的,因为它已经被批准在我的组织中安装,并且它是免费的.我在加拿大政府工作,所以任何免费的东西都是最好的,我们已经批准安装的任何东西都会更好.
我在 Node.js 中遇到了一个非常令人沮丧的问题。
我将从我正在做的事情开始。
我在文件中创建一个对象,然后导出构造函数并在其他文件中创建它。
我的对象定义如下:
文件 1:
var Parent = function() {};
Parent.prototype = {
C: function () { ... }
}
module.exports = Parent;
Run Code Online (Sandbox Code Playgroud)
文件2:
var Parent = require('foo.js'),
util = require('util'),
Obj = function(){ this.bar = 'bar' };
util.inherits(Obj, Parent);
Obj.prototype.A = function(){ ... };
Obj.prototype.B = function(){ ... };
module.exports = Obj;
Run Code Online (Sandbox Code Playgroud)
我正在尝试在另一个文件中像这样使用该对象
文件 3:
var Obj = require('../obj.js'),
obj = new Obj();
obj.A();
Run Code Online (Sandbox Code Playgroud)
我收到错误:
TypeError: Object [object Object] has no method 'A'
Run Code Online (Sandbox Code Playgroud)
但是当我运行 Object.getPrototypeOf(obj) 我得到: …
.net ×1
c# ×1
command-line ×1
generics ×1
inheritance ×1
javascript ×1
node.js ×1
ssh ×1
windows-xp ×1