Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailemVyřešeno An object reference is required for the non-static field, method, or property

Ahoj,
když v C# ve Windows Form Application vytvořím funkci a použiju ji, normálně funguje. Když ale úplně stejnou funkci vytvořím v Console Application, Visual Studio mi napíše "Error 1 An object reference is required for the non-static field, method, or property 'ConsoleApplication4.Program.Funkce(int)'". Nevíte, v čem dělám chybu?
Díky za pomoc

Jsou zobrazeny jen nové odpovědi. Zobrazit všechny
Předmět Autor Datum
console application ma staticku classu program. preto aj funkciu vytvor ako static.
wam_Spider007 07.09.2015 22:07
wam_Spider007
Jsem v programování začátečník, takže to budu potřebovat víc polopaticky :). Chtěl jsem vytvořit kon…
vojtaskaroupka 14.09.2015 18:07
vojtaskaroupka
static int Funkce(int a)
Wikan 14.09.2015 18:16
Wikan
Zkusil jsem a aplikace funguje. Díky za pomoc
vojtaskaroupka 14.09.2015 19:50
vojtaskaroupka
Měl by ses naučit psát trochu přehlednější kód. poslední
ws79 14.09.2015 20:23
ws79

Jsem v programování začátečník, takže to budu potřebovat víc polopaticky :).
Chtěl jsem vytvořit konzolovou aplikaci, která přečte číslo, které do ní zapíše uživatel a odpoví (zadané číslo + 1) pomocí funkce. Funkce je to hloupá, ale snažím se začínat od jednoduchých věcí.
Když si vytvořím WindowsForm Aplikaci a napíšu do ní :
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace C_Sharp_WindowsForm_Aplikace
{
public partial class Form1 : Form
{
public int Funkce(int a) //Má funkce
{
a = a + 1;
return a;
}

public Form1()
{
InitializeComponent();
}

private void plusJedna(object sender, EventArgs e) //Aplikace má textbox, do kterého se napíše číslo a pak se v něm zobrazí výsledek
{
txt.Text = (Funkce(int.Parse(txt.Text))).ToString();
}
}
}

Aplikace mi funguje jak má, chci udělat to samé v Konzolové aplikaci, ale když napíšu kód :
using System;

namespace C_Sharp_Konzolová_aplikace
{
class Program
{
public int Funkce(int a)//Stejná funkce
{
a = a + 1;
return a;
}

static void Main(string[] args)
{
Console.WriteLine(Funkce(int.Parse(Console.ReadLin e())));//Která se mi vypíše do konzole
Console.ReadLine();
}
}
}

Vypíše mi Visual Studio chybu. Jak mám tedy napsat kód správně? A prosím o co nejvíc vysvětlivek.
Díky :)

Zpět do poradny Odpovědět na původní otázku Nahoru