c# - 没有给定的参数对应于 'sir'的所需形式参数 'Money.Money(string)'

标签 c# syntax-error

所以,我是 C# 和对象编程的新手,我遇到了一个小问题。

在基类中我有这个(它基本上将字符串转换为 double[]:

namespace PersonalSpendings
{
    class Money
    {
        private decimal money { get; set; }
        public Money(string str)
        {
            //conversion from string to double[]
            int j = 0;
            string[] str2 = str.Split(new char[] { ' ', ',', '.' },         
StringSplitOptions.RemoveEmptyEntries) ;
            double[] strFinal = { '0', '0', '0' };
            foreach(string i in str2)
            {
                strFinal[j] = double.Parse(i);
                j++;
            }
            j--;
        }
    }
}

我不明白为什么它不允许我创建另一个构造函数(具有不同的参数):

namespace PersonalSpendings
{
    class Income: Money
    {
        public Income(double amount, string name)
        {

        }
        public Income(string str) : base(str)
        {
        }
    }
}

第一个构造函数有问题:(双倍数量,字符串名称)。

我不能创建特定于派生类的构造函数吗?

最佳答案

是的,您可以,但是由于您的基类只有一个带参数的构造函数,您需要从派生类中的任何构造函数调用它。

    public Income(double amount, string name) : base(/* something */)
    {

    }
    public Income(string str) : base(str)
    {
    }

关于c# - 没有给定的参数对应于 'sir'的所需形式参数 'Money.Money(string)',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55557503/

相关文章:

c# - 将 SecureString 放入 PasswordBox

"from (subquery) ' 表附近的 MySQL 语法错误'”

c++ - 为什么这段代码有效,而那段代码却不行?

python - 源代码字符串不能包含空字节

c# - 如何使用c#仅获取文件夹中的最后两个文件

c# - 在 C# 中使用 UInt32 和 Int32 有什么显着的性能差异

python - 在这种特殊情况下如何避免 "ValueError: invalid\x escape"错误?

sql-server - MS-SQL 2008服务器: Wrong Syntax?

c# - C# 中的数组数组

C# 如何转义 eval <%?