Unity kód - private / public – C / C++ – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Unity kód - private / public – C / C++ – Fórum – Programujte.comUnity kód - private / public – C / C++ – Fórum – Programujte.com

 

Twit
~ Anonymní uživatel
10 příspěvků
4. 8. 2016   #1
-
0
-

Ahojte,hrám sa s Unity a Csharpom ,som len začiatočník,základy z programovania mám,no chcem sa spýtať na tento kód. 

using UnityEngine;
using System.Collections;

public class PlayerController : MonoBehaviour {

    private Rigidbody rb;
    public float sila;
	// Use this for initialization
	void Start () {
        rb = GetComponent<Rigidbody>();
	
	}
	
	// Update is called once per frame
	void FixedUpdate () {
        float horizontal = Input.GetAxis("Horizontal");
        float vertical = Input.GetAxis("Vertical");

        Vector3 move = new Vector3(horizontal,0.0f,vertical);
        rb.AddForce(move*sila);
	
	}

    void OnTriggerEnter(Collider other)
    {
        if (other.gameObject.CompareTag("Gem"))
        {
            other.gameObject.SetActive(false);
        }

    }
}

A to konkrétne,prečo musí byť jedna premenná public a druhá private.Vďaka

Nahlásit jako SPAM
IP: 78.98.20.–
5. 8. 2016   #2
-
0
-

Ona být private nemusí...

V objektovém programování jde o zapouzdření. Z toho důvodu interní věci třídy zůstavájí při pohledu z venku skryté. Naproti tomu rozhraní (prostředníctvím něj objekt komunikuje s okolím) musí být veřejné ( = public), jinak by ho jiný objekt nemohl použít. Vzato do důsledku bys měl mít v rozhraní jen public metody a proměnné mít private.

hu

Nahlásit jako SPAM
IP: 195.178.67.–
BDS+3
Věrný člen
5. 8. 2016   #3
-
0
-

#1 Twit
Jen na doplnění:

PlayerController tridaPlayerController;

Jde o to, že to co potřebuješ mít přístupné z venku, dáš public. Pak můžeš zavolat například tridaPlayerController .nejakaSoucast.

Ale někdy budeš chtít, aby některá součást nebyla přístupná z venku - tak ji nastavíš jako private.

Kromě zabezpečení je to výhodné i proto, že když píšeš kód, tak by se ti v nabídce, když stiskneš tečku za tridaPlayerController. zobrazila hromada věcí, + i ty co bys neměl použít. Takhle se zobrazí jen to co je public

Pokud neuvedeš nic, tak se to bere jako private.

ps, tento dotaz běl být v sekci .NET

Nahlásit jako SPAM
IP: 185.69.69.–
W11 :)
Twit
~ Anonymní uživatel
10 příspěvků
5. 8. 2016   #4
-
0
-

Aha,no tak celkom chapem. Chcem sa este spytat,ak by ste mi vedeli poradit ako zrezem nejaku kocku alebo iny 3D utvar v Unity? Napriklad keby som chcel nejaku naklonenu rovinu,viem ze by sa to dalo len spravit rovinu a natocit ju ,ale chcel by som to radsej nejako obrezat. Vdaka :)

Nahlásit jako SPAM
IP: 78.98.20.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 109 hostů

Moderátoři diskuze

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý