2013-04-08 3 views
-3

У меня возникли проблемы с записью перегруженного конструктора для этого ниже. Это то, что меня попросили сделать. Создайте перегруженный конструктор для класса Plane, который принимает три точки в качестве входных данных. Назовите эти входы pointU, pointV и pointW.C# перегруженные конструкторы

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 

namespace Geometry 
{ 
    public class Plane 
    { 
     //--------------------------------------------------------------------- 
     //           PRIVATE INSTANCE VARIABLES 
     private Point u; 
     private Point v; 
     private Point w; 

     //--------------------------------------------------------------------- 
     //               CONSTRUCTORS 
     public Plane() 
     { 
      u = new Point(); 
      v = new Point(); 
      w = new Point(); 
     } 

     //Overloaded Constructor with 3 Points as inputs 
+0

@AMR да его домашнее задание, но очень небольшой кусок его к классу, который я даже не нужно больше ... –

ответ

2

Перегруженные средства заменяют подпись вашего конструктора, не имея трех экземпляров в вашем по умолчанию ctor. Так

public Plane() 
    { 
    u=new Point(); v= new Point() ; w=new Point() 
    } 

Должно быть:

public Plane(Point p1, Point p2, Point p3) 
{ 
    u= p1; v = p2; w=p3; 
} 
+0

Что такое первая часть должна иметь в виду? Похоже, вы цитируете вопрос, но нет ничего подобного. – svick

+0

@svick Да, это исправлено. –

0

Для overlaod в constuctor с 3 очками вы просто должны добавить 3 аргумента в конструкторах подписи

Пример:

public Plane(Point pointU, Point pointV, Point pointW) 
{ 
    u = pointU; 
    v = pointV; 
    w = pointW; 
} 
2

Это перегруженный конструктор, который принимает ваши 3 очка и assig ns их к вашим членам класса.

public Plane(Point u, Point v, Point w){ 

       this.u = u; 
       this.v = v; 
       this.w = w;    
} 
Смежные вопросы