1

我创建了一个公共类并编写了一个公共构造函数,其参数如下:

public Patient(SqlDataReader reader, string p) {
        if (p == "L") {
            Name = reader[0].ToString();
        }
        else { }
    }

然后我使用了这个构造函数

SqlDataReader reader = command.ExecuteReader();
                while (reader.Read())
                {
                    Patient myP(reader, "L");                    
                }

然后在调试期间,我得到了错误: Error 49 Expected ; or =(不能在声明中指定构造函数参数)

问题出在哪里,我该如何解决?

4

2 回答 2

5

该语法根本无效。尝试:

Patient myP = new Patient(reader, "L");

或(相同的结果):

var myP = new Patient(reader, "L");
于 2013-05-29T06:47:58.837 回答
1

您应该使用带有new运算符的构造函数;

Patient p = new Patient(reader, "L");

您的语法对 C# 无效。

new Operator (C# Reference)

用于创建对象和调用构造函数

于 2013-05-29T06:49:42.900 回答