🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Thread View: alt.pl.comp.lang.csharp
3 messages
3 total messages Started by Marek Janaszewski USUNTO. z adre... Mon, 29 Mar 2004 16:46
Definiowanie prostych typów
#720
Author: Marek Janaszewski USUNTO. z adre...
Date: Mon, 29 Mar 2004 16:46
27 lines
2053 bytes
Witam!

Jak zdefiniować w C# posty typ całkowity. Chciałem zrobić coś takiego ale
nie znalazłem informacji na ten temat.

Interesują mnie dwa przypadki, chce stworzyć własny alias typu. Np. więc, że
jakiś argument w z dll-ki oryginalnie nazywać się HDC, ale tak na prawdę
jest to liczba całkowita. Więc chce zdefiniować, że HDC = System.Int32. C#
ma wbudowane aliasy typów, w tym przypadku int. A czy można zdefiniować
własne?

Drugi przypadek to chce stworzyć nowy typ bazujący np. na typie
System.Int32. W Pascalu są typy okrojone. Nie jest mi akurat potrzebne, ale
chce stworzyć całkowity zgodny w predefiniowanym typem w sensie przypisania.
To znaczy wartość typy Int32 i mojego dają się wzajemnie przypisywać bo dane
są tak samo reprezentowane ale kompilator nie uważa ich za te same typy.
Jeśli podam mój typ jako parametr metody, który jest także wyjściem. Czyli
przekazywanie parametru przez referencje, to kompilator zaprotestuje bo jest
wymagana identyczności typów.

Jak tego typu problemy załatwia się C#. Może w pierwszym przypadku należy
użyć preprocesora.

-- 
Pozdrawiam,
Marek Janaszewski
[ j_m...@gazeta.pl ]
Re: Definiowanie prostych typów
#721
Author: Piecu
Date: Mon, 29 Mar 2004 17:59
22 lines
1981 bytes
Użytkownik Marek Janaszewski (USUN_TO. z adresu!) napisał:
> Interesują mnie dwa przypadki, chce stworzyć własny alias typu. Np. więc, że
> jakiś argument w z dll-ki oryginalnie nazywać się HDC, ale tak na prawdę
> jest to liczba całkowita. Więc chce zdefiniować, że HDC = System.Int32. C#
> ma wbudowane aliasy typów, w tym przypadku int. A czy można zdefiniować
> własne?

using HDC = System.Int32;
O to chodzi?

> Drugi przypadek to chce stworzyć nowy typ bazujący np. na typie
> System.Int32. W Pascalu są typy okrojone. Nie jest mi akurat potrzebne, ale
> chce stworzyć całkowity zgodny w predefiniowanym typem w sensie przypisania.

A tu nie wiem. Po System.Int32 nie można dziedziczyć, bo jest sealed.

-- 
  ____  _
|  _ \(_) ___  ___ _   _   piecu(malpka)go2.pl   gg:1277308
| |_) | |/ _ \/ __| | | |  --------------------------------
|  __/| |  __/ (__| |_| |  "jutro to dziś - tyle, że jutro"
|_|   |_|\___|\___|\__,_|       Sławomir Mrożek (1981)
Re: Definiowanie prostych typów
#722
Author: Marek Janaszewski USUNTO. z adre...
Date: Tue, 30 Mar 2004 18:22
21 lines
1637 bytes
Piecu wrote:
> Użytkownik Marek Janaszewski (USUN_TO. z adresu!) napisał:
>> Interesują mnie dwa przypadki, chce stworzyć własny alias typu. Np.
>> więc, że jakiś argument w z dll-ki oryginalnie nazywać się HDC, ale
>> tak na prawdę jest to liczba całkowita. Więc chce zdefiniować, że
>> HDC = System.Int32. C# ma wbudowane aliasy typów, w tym przypadku
>> int. A czy można zdefiniować własne?
>
> using HDC = System.Int32;
> O to chodzi?
[...]

Witam!

Udało mi się tego użyć dopiero za zadeklarowałem using w przestrzeni nazw a
nie w klasie. Czy taki alias typu jest widoczny poza przestrzenią nazw?

-- 
Pozdrawiam,
Marek Janaszewski
[ j_m...@gazeta.pl ]
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads