Ostré závorky v deklaraci proměnných   zodpovězená otázka

VB.NET, Offtopic, Architektura

Nedávno jsme zde řešili, jak vytáhnout ze systému ikony přidružené k jednotlivým souborům. Poté co jsme tady vypotili pár litříků intelektuálního potu a vzájemně jsme se předháněli v disciplině, kdo na tohoto pomyslného vrabčáka vytáhne větší kanón, pan Herceg dnes přišel se svou špuntovkou, a vrabčáka nám, s elegancí sobě vlastní, zastřelil. (Já tušil, že to musí jít jednodušejc!)

Při té příložitosti bych si ale dovolil položit jeden, možná začátečnický, dotaz.

Již jsem se s tím několikrát setkal, ale prozatím jsem nenarazil (nebo jsem přehlédl) vysvětlení.

Co znamenají příp. k čemu slouží ty ostré závorky, (a samozřejmě text v nich) při deklaraci proměnných (mám na mysli např. ve Vašem kódu použité:

<MarshalAs(UnmanagedType.ByValTStr, SizeConst:=260)> Public szDisplayName As String

atd.?

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Člověče, vy jste měl jít spíš na spisovatele. Ty Vaše metafory :-). Ale teď vážně.

Před deklarací prakticky čehokoliv můžete přidat tzv. atributy. Jsou to jakési instrukce pro kompilátor, které něco udělají. To MarshalAs je kvůli tomu, že .NET reprezentuje v paměti String jinak než je to ve Windows API (.NET to má v Unicode, ale to není jediný rozdíl). S použitím atributu kompilátor pozná, jak má String převést.

Atributy se používají v pokročilejších věcech poměrně dost, můžete si dokonce vytvořit svoje vlastní a označit s nimi procedury, třídy, proměnné atd.

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Děkuji za vysvětlení.

A k tomu "spisovateli" - ne, nemám takovýchto ambicí a žel bohu ni schopnosti ducha mého nedostačují, by můza má se v svět rozlétla.

Však věk můj jest snad příčinou, že jazyk český - v dobách let mých studentských ne zrovna nejoblíbenější to předmět - stále víc a více láká mne do zákoutí a tajů svých a já s úžasem pozoruji, že ne toliko visual basic, neb i mluva naše mateřská jest plna jevů mnou nepoznaných. A čím více jich poznávám, tím více žasnu, tím více se se slovíčky laskám.

Ne, neodsuzuji mladých, kteří (i na stránkách této diskuse) k jazyku svému macešsky se chovají, moc dobře vím, že já v jejich věku nebyl jiným, přesto je dobré i jim, ba co dím, snad právě jim ukázat, že i v diskusích ryze technických lze ctít alespoň základních pravidel řeči naší mateřské. :-)

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Když již se diskuze dostala mimo .NET, osmělím se zeptat: co vyjadřuje Vaše foto? Nějak se mi k Vámi inzerovaným šedinám a vzletnému slohu nehodí. Kdybyste otázku považoval za drzou, přejděte ji mlčením a omluvte nerozvážnost mládí :-))

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Není drzých otázek tam, kde špatného úmyslu není. A nelze mi, než na upřímnou otázku stejně upřímné odpovědi poskytnouti! (ale raději již mluvou civilnější).

Mé "šediny" (ač i těch by se našlo nepočítaně) jsou pouze poukazem na skutečnost, že se přece jenom již nemohu řadit mezi ty šikovné -nácileté, kteří spolu s námi tyto stránky sdílejí, ani se nemohu rovnat těm šikovným mladým mužům, kteří je pro nás připravují. Tento "vyšší" věk má, samozřejmě, svá pozitiva i negativa - nemohu si na těchto stránkách dovoli úplně vše co projde jiným, protože svou naivitu či neznalost zcela základních věcí menohu omluvit "nezkušeností mládí", naopak mohu ocenit záslužnost konání pánů webmasterů, kteří tady odvádějí kus poctivé práce.

Jinak k té fotografii - to mne manželka letos donutila absolvovat dovolenou v jižních krajích a protože pro mne není již žádnou výhrou opékat se někde u moře na sluníčku, nejlépe jsem se cítil na poušti mezi velbloudy - tam jsem se našel.

A pokud Vás zajímá ještě více vězte, že v době, kdy nás navštívily "spřátelené armády" mi bylo pět.

Ale od osobních k diskusním tématům - hlavním poselstvím mého příspěvku bylo přesvědčení, že není rozhodně ostudou, ba právě naopak, i v případě ryze technických diskusí alespoň trošičku dbát i na stránku jazykovou - sám uznáte, že některé příspěvky některých přispivatelů se zde louskají velice těžce!

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Děkuji za odpověď, přebírám právo na šediny, na konci čísla roku mého narození je Váš věk :-)

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Budiž, nechť je Vám tedy přiznán titul nestora tohoto Webu a mně nezbývá než sklonit se před Vašim skutečným a nezadatelným právem odvolávati se šedin svých. A chci pouze podotknout, že můj obdiv ku snaze a ochotě pomoci jiným jest namířen i k Vám - tudíž bez rozdílu věku či pohlaví (ač toho něžného jsem tady, až na nějakou tu světlou výjimku, moc nezaznamenal).

A na závěr bych si dovolil vyslovit jedno přání, abychom se společně už brzy mohli, misto tohoto sice příjemného, leč z pohledu Visual Basicu bezobsažného plácání, vnořit do dalšího pokračování některého ze zde prezentovaných poučných seriálů.

Já Vás zdravím a přeji krásný den!

nahlásit spamnahlásit spam 0 odpovědětodpovědět
                       
Nadpis:
Antispam: Komu se občas házejí perly?
Příspěvek bude publikován pod identitou   anonym.
  • Administrátoři si vyhrazují právo komentáře upravovat či mazat bez udání důvodu.
    Mazány budou zejména komentáře obsahující vulgarity nebo porušující pravidla publikování.
  • Pokud nejste zaregistrováni, Vaše IP adresa bude zveřejněna. Pokud s tímto nesouhlasíte, příspěvek neodesílejte.

přihlásit pomocí externího účtu

přihlásit pomocí jména a hesla

Uživatel:
Heslo:

zapomenuté heslo

 

založit nový uživatelský účet

zaregistrujte se

 
zavřít

Nahlásit spam

Opravdu chcete tento příspěvek nahlásit pro porušování pravidel fóra?

Nahlásit Zrušit

Chyba

zavřít

feedback