Question: I'm learning OOP with C# in Visual Studio and am having some trouble. I have a "calc" class with the following Constructor and an add method:

```
public Calc(int x, int y)
{
    num1 = x;
    num2 = y;
}

public int Add()
{
    return num1 + num2;
}

```

I'm trying to make a simple Windows Forms App that takes two numbers from two text boxes. Those two numbers will be used in the Add() method to get the sum. My problem is that I'm trying to code in an OOP style, but I don't know how to get those two numbers into the object instance declaration, meaning in the following code:

```
Calc calc1 = new Calc();

```

Answer: 
I would suggest changing your class design to

```
    public Calc()
    {
    }

    public int Add(int num1, int num2)
    {
        return num1 + num2;
    }

    public int Subtract(int num1, int num2)
    {
        return num1 - num2;
    }

```

In real scenario, you could think of *Calc* as a calculator class which could have other members as well, operators (+, -, /, %), for example. This way you could use different calculation methods without having to create *Calc* instance every time.

Calling this method from Form.cs file:

```
int num1 = Convert.ToInt32(textBox1.Text);
int num2 = Convert.ToInt32(textBox2.Text);
int num3 = Convert.ToInt32(textBox3.Text);
int num4 = Convert.ToInt32(textBox4.Text);

Calc c = new Calc();
var addition = c.Add(num1, num2);
var subtraction = c.Subtract(num3, num4);

```
```
int num1 = 0;
int num2 = 0;

num1 = int.TryParse(TextBox1.Text, out num1);
num2 = int.TryParse(TextBox2.Text, out num2);

Calc calc1 = new Calc(num1, num2);

int answer = calc1.Add();

MessageBox.Show(answer.ToString()); // will show 9

```