标签: base

有没有内置的方法将整数转换为C#中的字符串(任何基数)?

由于某些奇怪的原因,Convert.ToString()只允许基数值为2,8,10和16; 是否有一些不明确的方式提供2到16之间的任何基础?

c# base

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

C#如何在Web服务中返回我的基类

我有一辆Car和派生的SportsCar:Car这样的
东西:

public class Car
{
    public int TopSpeed{ get; set; }
}


public class SportsCar : Car
{
    public string GirlFriend { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

我有一个Web服务,返回汽车的方法,即:

[WebMethod]
public Car GetCar()
{
    return new Car() { TopSpeed = 100 };
}
Run Code Online (Sandbox Code Playgroud)

它返回:

<Car>
<TopSpeed>100</TopSpeed>
</Car>
Run Code Online (Sandbox Code Playgroud)

我有另一种方法也返回这样的汽车:

[WebMethod]
public Car GetMyCar()
{
    Car mycar = new SportsCar() { GirlFriend = "JLo", TopSpeed = 300 };
    return mycar;
}
Run Code Online (Sandbox Code Playgroud)

它编译很好和一切,但在调用它时我得到:
System.InvalidOperationException:生成XML文档时出错.---> System.InvalidOperationException:不期望wsBaseDerived.SportsCar类型.使用XmlInclude或SoapInclude属性指定静态未知的类型.

我觉得奇怪的是,因为mycar是一辆汽车所以它不能将其序列化为直车.

在WebMethod上添加XmlInclude可以消除错误:

[WebMethod]
[XmlInclude(typeof(SportsCar))]
public Car GetMyCar()
{
    Car …
Run Code Online (Sandbox Code Playgroud)

c# serialization web-services derived base

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

是否可以在Sinatra中重写基本URL?

是否可以重写基本URL?

例如,而不是www.host.com/使用www.host.com/blah/作为基础URL等:

get '/' do
  ...
end
Run Code Online (Sandbox Code Playgroud)

会工作的 www.host.com/blah/

我可以附加到我的所有路线,'/blah/..'但任何宝石等都无法正常工作.

这可以在Rails中轻松完成,我也想在Sinatra中使用它.

ruby url rack base sinatra

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

C# - 从基本方法完成返回

我有一个void Action()在派生类中重写的虚基本方法.

行动的第一步是打电话base.Action().如果基本方法中出现某种情况,我不希望处理其余的派生方法.

我想知道是否有一个关键字或设计模式,允许我从基本方法退出派生方法.

目前我正在考虑将void更改为bool并将其用作流控制,但我想知道是否有任何其他设计模式我可以使用.

c# methods inheritance derived base

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

Perl:如何从基类导入子例程?

我有一个名为Foo :: Base的基类,我需要继承它的方法,比如'new'并在范围中导入一些子例程名称:

package Foo::Base;

sub new { ... }

sub import {
    no strict 'refs';

    my $caller = caller;

    *{"${caller}::my_sub"} = sub { 1 };
}

1;
Run Code Online (Sandbox Code Playgroud)

所以,我需要在我的第二个类Foo :: Child中使用这个基类:

use base 'Foo::Base';
Run Code Online (Sandbox Code Playgroud)

...它适用于继承,但它不会在范围中导入"my_sub".我可以添加字符串

use Foo::Base;
Run Code Online (Sandbox Code Playgroud)

对它而言它有所帮助,但我不想写这样的东西:

use base 'Foo::Base';
use Foo::Base;
Run Code Online (Sandbox Code Playgroud)

这看起来很奇怪......对这个问题有什么建议吗?

oop import perl inheritance base

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

阴影图中的某些区域 - 基线R中的线和点图的组合

我有以下问题:

set.seed(1234)
dis = seq(1, 800, 10)
 yvar = rnorm(length (dis), 50, 10)
myd <- data.frame (xvar = dis, yvar = yvar, yvarL = 
yvar - rnorm (length (yvar),5, 1), yvarU = yvar + rnorm (length (yvar), 5, 1))
plot(myd$xvar,myd$yvar,pch=19,cex=.75,col="blue")
points(myd$xvar,myd$yvarL,col="gray", pch=19,cex=.5)
points(myd$xvar,myd$yvarU,col="gray", pch=19,cex=.5)
Run Code Online (Sandbox Code Playgroud)

Y有三个值 - Y,上限和下限.我想在轴上的两个间隔之间进行遮蔽.其余的图表只是点.假设的产品图应该相似(不完全).

在此输入图像描述

如何在两个间隔之间遮蔽并产生线图,例如在myd $ xvar中650到690和210到280之间.我尝试根据这篇文章(R中的xy曲线图中的阴影)进行一些polygot拟合,但没有成功.

polygon(c(myd$xvar[1:200], myd$xvar[200:1]), c(myd$xvar[1:200],
   myd$yvar[200:1]), col="gray")
Run Code Online (Sandbox Code Playgroud)

r graph base

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

为什么基类事件可以调用私有方法?

我有一个关于提升基类事件的问题.我目前正在阅读MSDN C#编程指南,我无法从下面的文章中理解一件事:

http://msdn.microsoft.com/en-us/library/vstudio/hy3sefw3.aspx

public void AddShape(Shape s)
{
    _list.Add(s);
    s.ShapeChanged += HandleShapeChanged;
}
Run Code Online (Sandbox Code Playgroud)

好的,所以我们用一个事件注册委托,我们将在引发事件时调用私有方法HandleShapeChanged.

public void Update(double d)
{
    radius = d;
    area = Math.PI * radius * radius;
    OnShapeChanged(new ShapeEventArgs(area));
}

protected override void OnShapeChanged(ShapeEventArgs e)
{
    base.OnShapeChanged(e);
}
Run Code Online (Sandbox Code Playgroud)

在这里,我们调用基类方法OnShapeChanged,它将成功触发事件.但是事件基于Shape类,那么它如何访问HandleShapeChanged方法,这是私有的?

我刚刚开始学习这门语言,所以请耐心等待.我对这个例子的理解可能远远不够.

c# events base

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

Python - 类型(名称,基数,字典)

文档:

使用三个参数,返回一个新类型对象.这实际上是类语句的动态形式.该字符串类名,并成为__name__属性; 所述元组逐条列出的基类和成为__bases__属性; 和字典的字典是包含用于类定义体的命名空间,成为__dict__属性.

在学习Python时,我发现这种类型的使用是"类声明的动态形式",这看起来非常有趣和有用,我希望能更好地理解它.有人可以清楚地解释,和在课堂上的角色__name__,并举出自己的权利.__bases____dict__type(name, bases, dict)

python dictionary namespaces base python-3.x

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

如何统计不同基数中的数字位数?

我正在使用不同基础的数字(基数为10,基数为8,基数为16等).我正在尝试计算每个数字中的字符数.

数: ABCDEF

位数:6

我知道基于对数的方法,但我遇到了一些问题.

  1. 此Python脚本输出无法正确计算1,000,000中3,969个数字中的正确位数.

  2. 我认为使用对数的方法可能相当慢

链接:

  • 这个C程序必须非常慢(如果我有一个非常大的数字怎么办?).它也不能处理不同基数的数字(例如,base-16).

  • 不是愚弄的这个,因为在OP问只有约基10


编辑:当然我可以计算一个字符串的长度,但最让我感兴趣的是,如果可以在没有常规字符串的情况下进行计算.我想知道可以帮助实现它的算法,只知道源基转换的基数.

Edit2: source-basebase-10,转换为的base可以是任何其他base.


我们如何计算不同基数中的数字位数?

如果我知道base-10中的数字,如何在不执行转换的情况下计算转换为base-16(base-8等)的相同数字的位数?

注意:一些Python或C代码将非常感激

c python algorithm base

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

为什么std :: setbase(2)没有切换到二进制输出?

cppreference页面上std::setbase写着:

除8,10或16之外的基数值将基址重置为零,这对应于十进制输出和前缀相关的输入.

怎么会?

有没有特别的理由为什么只支持这些基地?至少支持16到16(实际上,高达36:0-9然后是az)的任何东西似乎微不足道,而不必做出任何困难的选择.具体来说,2是一个受欢迎的基础,我认为应该有兴趣std::setbase(2)(和相应的std::binary).

我显然可以打印自己的位,但对我的ostream来说这样做会很好.

c++ base ostream c++-standard-library iomanip

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