Solucionado (ver solução)
Solucionado
(ver solução)
4
respostas

ContaCorrente titular é inacessível devido ao seu nível de proteção

Em outro fórum a pessoa identificou quem o problema era em não colocar a classe ContaCorrente como 'public'. Porém eu so consegui colocando os atributos com 'public'.

ContaCorrente.cs

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

namespace bytebank
{
    public class ContaCorrente
    {
        string titular;
        int agencia;
        int conta;
        double saldo;
    }
}

Program.cs


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

namespace bytebank
{
    class Program
    {
        static void Main(string[] args)
        {

            ContaCorrente conta = new ContaCorrente();



            conta.titular = "Bruno";

            Console.WriteLine(conta.titular);


            Console.ReadLine();
        }
    }
}

Só consegui rodar fazendo dessa forma:

ContaCorrente.cs

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

namespace bytebank
{
    class ContaCorrente
    {
        public string titular;
        public int agencia;
        public int conta;
        public double saldo;
    }
}
4 respostas

Falaa bruno, tudo certo ?

Tente colocar as propriedades assim:

private string Titular { get; set; }
private int Agencia { get; set; }
private int Conta { get; set; }
private double Saldo { get; set; }

Abraços.

Dessa forma no visual studio aparece o mesmo erro 'ContaCorrente.titular' é inacessível devido ao seu nível de proteção porém o programa roda. LINK

solução!

Eu acredito que pode ter sido falta de atenção minha quanto eu coloquei o 'public' somente ao iniciar a classe.

public class ContaCorrente
    {
        string titular;
        int agencia;
        int conta;
        double saldo;
    }

E o correto seria

public class ContaCorrente
    {
       public  string titular;
       public int agencia;
       public int conta;
       public double saldo;
    }

Boa noite Bruno, perceba que propriedades privadas em C# tem que ser com a inicial em letra maíuscula ok?

private string Titular { get; set; }
private int Agencia { get; set; }
private int Conta { get; set; }
private double Saldo { get; set; }

Dessa forma, pode ser somente um erro de sintax. se não funciona posta aqui novamente.