Šta zanči istanciranje objekta pr. dim igracA as new Igrac?

Šta zanči istanciranje objekta pr. dim igracA as new Igrac?

offline
  • Pridružio: 28 Avg 2009
  • Poruke: 196

Šta zanči istanciranje objekta pr. dim igracA as new Igrac? Zašto se uopšte radi pravljenje novog objekta?



Registruj se da bi učestvovao u diskusiji. Registrovanim korisnicima se NE prikazuju reklame unutar poruka.
offline
  • Programer
  • Pridružio: 23 Maj 2012
  • Poruke: 4576

Kada imaš klasu, onda za nju možeš napraviti i objekat. E sad, ne razumem sa baš u OOP C#, ali igracA ti je u ovom slucaju novi objekat u klasi Igrac (ako imaš osnovno poznavanje engleskog možeš i sam da zaključiš). Klasa se instancira tako što joj se doda nova instanca (instance).

bolepks ::Zašto se uopšte radi pravljenje novog objekta?

Bolje da si postavio pitanje zašto je OOP bolji od proceduralnog programiranja. Ti kada napraviš objekat možeš da zadaš i parametre konstruktora i da dodaš atribute ...

Pogledaj ovo naprimer (u C++ je doduše):

#include <iostream> class kvadar {    public:        int a;        int b;        int c;        int povrsina; }; int main() {   kvadar kvadar1;   std::cout << "Unesite duzinu stranice a: " << std::endl;   std::cin >> kvadar1.a;   std::cout << "Unesite duzinu stranice b: " << std::endl;   std::cin >> kvadar1.b;   std::cout << "Unesite duzinu stranice c: " << std::endl;   std::cin >> kvadar1.c;   std::cout << "Povrsina kvadra je: " << 2*(kvadar1.a*kvadar1.b + kvadar1.a*kvadar1.c + kvadar1.b*kvadar1.c) << std::endl;   return 0; }

Ne mora tu ništa posebno da se objašnjava, mogućnosti je puno (polimorfizam, enkapsulacija, prijateljske klase...).



offline
  • Pridružio: 28 Avg 2009
  • Poruke: 196

Napisano: 08 Dec 2013 19:27

Jel možeš na osmoj strani u ovom priručniku se nalazi jedan primer Matematika U C# da mi objasniš kako ide kod?
Ima na osmoj strani u ovom primeru [Link mogu videti samo ulogovani korisnici]

Dopuna: 08 Dec 2013 19:39

Gde grešim class program
{
static void Main(string[] args)
{
Matematika M = new Matematika();
Console.WriteLine(M.Zbir(3,4));
Console.WriteLine(M.Razlika(8,2));
Console.ReadKey();

}
}
class Matematika
{
public double Zbir(double A, double B)
{
return A + B;
}

public double Razlika(double A, double B)
{
return A - B;
}
}

offline
  • Programer
  • Pridružio: 23 Maj 2012
  • Poruke: 4576

Napisano: 08 Dec 2013 19:40

Šta da ti objasnim, šta ti tačno nije jasno? Ne vidim ništa teško ovde, imaš dve javne funkcije (public označava da su javne), a vraćaju decimalnu vrednost (double). U parametru su mesta rezervisana za dve decimalne vrednosti, A i B. Funkcija ima zadatak da vrati zbir ta dva broja
Citat:
return A + B;

, odnosno ispiše rezultat tog izraza, samo što u programu double A i double B zamenjuješ sa brojevima.

double zbir(5, 7);

Isti je princip i za razliku.

Dopuna: 08 Dec 2013 19:48

Gde ti je header?

using System; namespace program {    class program { ...

Inače ti si ovde sve zabrljao što se tiče redosleda, prvo učitaš biblioteke koje program treba da koristi:

using System;

onda dodaješ namespace <imeprojekta>. Obično ga Visual Studio sam generiše.

namespace imeprojekta {

onda dodaješ klasu programa:

class program {

i nakon te klase definišeš sve klase koje imaš. Tek posle toga ideš:

static void Main(string[] args) {

Ispravi samo to i povrati pažnju na estetiku pisanja koda sad dok si na početku kako bi se navikao. Obrati pažnju na moj C++ kod i način na koji je napisan (koristi TAB, SPACE...)

Ko je trenutno na forumu
 

Ukupno su 1458 korisnika na forumu :: 108 registrovanih, 15 sakrivenih i 1335 gosta   ::   [ Administrator ] [ Supermoderator ] [ Moderator ] :: Detaljnije

Najviše korisnika na forumu ikad bilo je 3466 - dana 01 Jun 2021 17:07

Korisnici koji su trenutno na forumu:
Korisnici trenutno na forumu: 015, 4. Ozrenska, 9191vs, AndrejPetar, armor, bagor10, bankulen, bbelic, Bobrock1, bojank, boro975, Brana01, branko7, brkan1, cemix, Chainsaw, comi, CraniumWhite, cvele130, cvrle312, dane007, darkangel, debeli, Denaya, dendrit86, Dioniss, dragoljub11987, Electron, ElGenius, filip1326, Fog of War, Folkstar, FOX, g_g, Gargantua, gasa97, gobrad, goxin, iceburn, Igritelj, indja, IQ116, Iskander, ivan1973, jodzula, Kajzer_Soze, Kobrim, komsija1, Korle, krkalon, kybonacci, Lazur_01, ljubo70, M74AB3, Manesaur, markolopin, maxim_von_burdengate, medaTT, Mercury, Mi lao shu, Michellefromrezistance, mikrimaus, MilosKop, MiroslavD, mist-mist, Murko, nazgul75, nerislav2025, nisamBot, Nobunaga, Novakomp, novator, Ognjen D., omen, orjen, padamacki, Panter, Parker, Pero, PlayerOne, Polemarchoi, radionica1, s0ne, saki80, samoborac, savaskytec, sekretar, shlauf, Singidunumac, Sir Budimir, SlaKoj, Sr.Stat., Steeeefan, stefanmpurtic, styg, superwhy, SveNormalno, Tribal, TRZH92, Tumansky, vathra, veljkovicdani, vidra1, Vlad000, yiyi, ZlatniRez, Zorge, Zvlade