我已经查看了至少10个关于获取/设置的SO问题,但找不到我的问题.所以我希望这不是重复.
public class myint
{
public int value{get;set;}
}
Run Code Online (Sandbox Code Playgroud)
VS
public class myint
{
public int value;
}
Run Code Online (Sandbox Code Playgroud)
以上两个代码对我来说是一样的.如果我想使用myint类,我只需编写下面的代码,它就可以在任一类上运行.
myint A;
A.value=10;
Run Code Online (Sandbox Code Playgroud)
那么get/set的用途是什么?
在我的A类中,我有一个ZMQ对象
public void StartLogging(object connection)
{
var ctxt = new ZMQ.Context();
var publisher = ctxt.Socket(ZMQ.SocketType.PUB);
publisher.Bind("tcp://127.0.0.1:5000");
if (connection is uint)
{
Console.WriteLine("strange");
Console.ReadLine();
}
}
Run Code Online (Sandbox Code Playgroud)
B级会做类似的事情
ClassA test=new ClassA();
Run Code Online (Sandbox Code Playgroud)
C级也会做同样的事情
ClassA test=new ClassA();
Run Code Online (Sandbox Code Playgroud)
这将导致创建2个ZMQ对象绑定到同一个端口,这将导致错误.我该如何解决这个问题?
我正在阅读一些代码而不了解基础工作.阅读一些例子,但他们没有解释我的问题.
两者都给出相同的输出.为什么我们需要base()?
没有基础的代码
class B : A
{
public B()
{
Console.WriteLine("B");
}
}
class A
{
public A()
{
Console.WriteLine("A");
}
}
class test
{
static void Main()
{
A a = new A();
B b = new B();
Console.ReadLine();
}
}
Run Code Online (Sandbox Code Playgroud)
VS
带有基础的代码
class B : A
{
public B():base()
{
Console.WriteLine("B");
}
}
class A
{
public A()
{
Console.WriteLine("A");
}
}
class test
{
static void Main()
{
A a = new A();
B b = …Run Code Online (Sandbox Code Playgroud) 我的同事喜欢这样做
if (!listbox1.InvokeRequired)
listbox1.Items.Add(Container.error_message);
else
listbox1.Invoke((MethodInvoker)delegate
{
listbox1.Items.Add(Container.error_message);
});
Run Code Online (Sandbox Code Playgroud)
他为什么要检查InvokedRequired?仅使用此声明会更好吗?
listbox1.Invoke((MethodInvoker)delegate
{
listbox1.Items.Add(Container.error_message);
});
Run Code Online (Sandbox Code Playgroud) 如果类Example1和类示例2具有传递不同参数的subscribe方法,如何定义抽象方法?
abstract class Test
{
public int _a;
public abstract void Subscribe();
}
class Example1 : Test
{
public override void Subscribe(int x,int y,int z)
{
}
}
class Example2 : Test
{
public override void Subscribe(string a, bool b)
{
}
}
Run Code Online (Sandbox Code Playgroud) 假设有三个(可以是任意数量)发布者(在不同的 Exe 上运行),它们分别发布到 127.0.0.1:1234,127.0.0.1:1235,127.0.0.1:1236。
目前,我可以使用以下方式连接 Pub-Sub
subscriber.Connect("tcp://127.0.0.1:22223");
Run Code Online (Sandbox Code Playgroud)
我如何才能连接到 3 个订阅者。抱歉,我阅读了指南,他们说我可以使用订阅者来做到这一点。我尝试失败