Области видимости переменных, C#

Узнай цену своей работы

Формулировка задачи:

Темный лес для меня эти области видимости, но разбираться надо, большую часть вроде разобрал, но вот тут зашел в тупик: Имеем форму, в которую через конструктор передаем две переменных
    
public partial class frmSendSMS : Form
    {
        public frmSendSMS(ref System.IO.Ports.SerialPort port, byte ATStatus)
        {
            InitializeComponent();
        }
    }
Проблема в том, что в процедурах этого класса/формы, эти переменные не доступны:
        private void sendSMS(ref System.IO.Ports.SerialPort port, bool isSMS, byte ATStatus)
        {
            port.Open();
            MessageBox.Show("Aha");
            //Здесь собственно код общения с модемом,
            //который мне без доступа к переменным писать бессмысленно
            port.Close();
        }
Ну собственно вопрос - как же мне заполучить эти переменные в процедуру?
Компилятор правда подчеркивает переменные не в определении процедуры, а при ее вызове, вот тут:
        private void frmSendSMS_KeyDown(object sender, KeyEventArgs e)
        {
            if (e.KeyCode == Keys.Enter)
            {
                sendSMS(ref port, radioBtnSMS.Checked, ATStatus);
            }
        }

Решение задачи: «Области видимости переменных, C#»

textual
Листинг программы
 public partial class Form1 : Form
    {
        int _p1;
        string _p2;
        public int P1
        {
            get { return _p1;}
            set{ _p1 =  value;}
        }
        public string P2
        {
            get { return _p2; }
            set { _p2 = value; }
        }
 
        public Form1()
        {
            InitializeComponent();
        }
 
    
    }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

14   голосов , оценка 3.929 из 5
Похожие ответы