-
Path: news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!newsfeed2.atman.pl!newsfeed.
atman.pl!news.task.gda.pl!not-for-mail
From: Baranosiu <r...@w...pl>
Newsgroups: pl.comp.programming
Subject: Re: coś lajtowego - konsola
Date: Sat, 20 Oct 2012 22:55:00 +0000 (UTC)
Organization: CI TASK http://www.task.gda.pl/
Lines: 78
Message-ID: <k5va44$2n6$1@news.task.gda.pl>
References: <4...@g...com>
<e...@g...com>
<s...@h...pl>
<6...@g...com>
<k5r7cr$ude$1@news.task.gda.pl>
<7...@g...com>
<k5rai5$6f5$1@news.task.gda.pl>
<a...@g...com>
<k5rf13$h4m$1@news.task.gda.pl>
<5...@g...com>
<s...@h...pl>
<1...@g...com>
<k5rmml$654$1@news.task.gda.pl>
<2...@g...com>
<a...@g...com>
<k5rp1q$9aq$2@news.task.gda.pl>
<0...@g...com>
<k5rptv$cpi$1@news.task.gda.pl>
<0...@g...com>
<k5sngl$mst$1@news.task.gda.pl>
<1...@g...com>
Reply-To: Baranosiu <r...@w...pl>
NNTP-Posting-Host: user-164-126-92-130.play-internet.pl
Mime-Version: 1.0
Content-Type: text/plain; charset=iso-8859-2
Content-Transfer-Encoding: 8bit
X-Trace: news.task.gda.pl 1350773700 2790 164.126.92.130 (20 Oct 2012 22:55:01 GMT)
X-Complaints-To: a...@n...task.gda.pl
NNTP-Posting-Date: Sat, 20 Oct 2012 22:55:00 +0000 (UTC)
User-Agent: slrn/pre1.0.0-18 (Linux)
Xref: news-archive.icm.edu.pl pl.comp.programming:200224
[ ukryj nagłówki ]Dnia 20.10.2012 kenobi <p...@g...com> napisał/a:
>>
>>
>> A="10"
>>
>> B=A*2
>>
>>
>>
>> bo coś takiego po prostu świadczy o błędzie programisty i język POWINIEN
>>
>> wymagać zrobienia B=int(A)*2 bo wtedy jest
>
> no ja mowie wlasnie o czyms takim, domyslne
> konwersje tylko czasem a nie zawsze
> np dla loguj(x)
Możesz podejść do tego tak jak na przykład jest w Javie, masz typ
'int' (prosty "niskopoziomowy") i masz klasę 'Integer' która ma
wszystkie "bajery" typu .toString() .pharseInt(String) itd. Nic nie
stoi na przeszkodzie aby to tak samo zrealizować w C++ (łącznie z
"automatycznym" konwertowaniem).
> jest to troche problematyczne ale nawet juz
> int(float) jest podobnie problematyczne (4ry
> tryby zaokraglania, nawet +(int, int) ma
> wiecej niz jedna wersje - nalezy pomyslec co
> mozna z tym zrobic (ja bym chcial zeby to bylo
> wygodne i konfigurowalne )
To że coś jest problemem dla Ciebie, nie znaczy że w ogólności jest
problemem :D Nie wymagaj od języka programowania, aby rozwiązywał za
Ciebie problemy, z którymi akurat Ty JESZCZE nie umiesz sobie
skutecznie poradzić. Wszystko o czym piszesz jest banalnie proste do
zrealizowania w C++ ale... po prostu trzeba się nauczyć skutecznego
używania języka w jakim programujesz. Innej opcji nie ma (a już
najgorsze co można zrobić, to "zepsuć" język i "odciąć" możliwość
własnego definiowania konwersji typów tylko dlatego, że ktoś chciałby
mieć automat działający w jeden konkretny sposób :D).
> druga rzecz to podzial funkcji na zewnetrzne
> (biblioteczne) i wewnetrzne (intrinsincowe, o ile
> tak mozna nazwac) te odpowiadajace zwyklym operatorom matematycznych sa tez
funkcjami
> tylko wewnetrznymi, imo takie podstawowe
> konwersje tez powinny nalezec do tej kategorii
> (w sumie troche odrebna sprawa czy te wewnetrzne
> tez dostawczac w formie dolaczanej biblioteki czy
> nie - ale podzial na te dwie kategorie uwazam
> za istotny i mz konwersja ciag <-> int/double
> raczej powinna miec status intrinsincowego
> operatora)
Zapewniam Cię, że taki język jak C++ nie ma ani jednej funkcji
"wewnętrznej", wszystkie funkcje są albo zdefiniowane przez
programistę, albo przez biblioteki. Język natomiast (pomijam
bibliotekę standardową) definiuje podstawowe typy (nie klasy!) danych
oraz podstawowe operatory dla tych typów (i tak być musi, bo typy
wbudowane nie są klasami).
Jeśli potrzebujesz lepszej funkcjonalności dla typu wbudowanego
char[], to zwyczajnie zastosuj KLASĘ 'string', albo zdefiniuj swoją
klasę pochodną od string i zdefiniuj w niej rzutowanie z inta i... po
sprawie (wrzuć to w swoją bibliotekę i używaj we wszystkich pisanych
przez siebie programach, jak potrzebujesz wydajności, to zrób wszystko
na 'inline'). Idea obiektowości jest taka, że definiujesz klasę raz, a
używasz jej wszędzie w różnych kontekstach. To jest proste jeśli się
włoży nieco wysiłku w naukę języka i oferowanych przez niego
możliwości.
Ty chcesz aby konstrukcja char* A = 1235; powodowała wpisanie pod
adres A napisu "1235" podczas gdy ja chcę, aby oznaczało to "od tego
momentu zmienna A wskazuje na komórkę pamięci o adresie 1235". Ty
chcesz zmiany semantyki języka bo nie umiesz (lub nie chce Ci się)
napisać prostego rzutowania jednocześnie eliminując z języka
mechanizm tylko dlatego, że w chwili obecnej z niego nie korzystasz :D
Nie idę na układ ograniczania funkcjonalności języka tylko dlatego, że
"ktoś ma z czymś problem" :D
Następne wpisy z tego wątku
- 21.10.12 10:07 kenobi
- 21.10.12 17:29 Baranosiu
- 22.10.12 08:18 Adam Wysocki
- 22.10.12 08:31 Adam Wysocki
Najnowsze wątki z tej grupy
- Can you activate BMW 48V 10Ah Li-Ion battery, connecting to CAN-USB laptop interface ?
- We Wrocławiu ruszyła Odra 5, pierwszy w Polsce komputer kwantowy z nadprzewodzącymi kubitami
- Ada-Europe - AEiC 2025 early registration deadline imminent
- John Carmack twierdzi, że gdyby gry były optymalizowane, to wystarczyły by stare kompy
- Ada-Europe Int.Conf. Reliable Software Technologies, AEiC 2025
- Linuks od wer. 6.15 przestanie wspierać procesory 486 i będzie wymagać min. Pentium
- ,,Polski przemysł jest w stanie agonalnym" - podkreślił dobitnie, wskazując na brak zamówień.
- Rewolucja w debugowaniu!!! SI analizuje zrzuty pamięci systemu M$ Windows!!!
- Brednie w wiki - hasło Dehomag
- Perfidne ataki krakerów z KRLD na skrypciarzy JS i Pajton
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- U nas propagują modę na SI, a w Chinach naukowcy SI po kolei umierają w wieku 40-50lat
- C++. Podróż Po Języku - komentarz
Najnowsze wątki
- 2025-07-12 Warszawa => PC Hardware Expert / Specjalista PC <=
- 2025-07-12 Warszawa => Account Manager - Usługi rekrutacyjne <=
- 2025-07-12 Warszawa => Administrator IT <=
- 2025-07-12 Warszawa => IT Administrator <=
- 2025-07-12 Warszawa => Asystent/tka ds. Administracji <=
- 2025-07-12 Warszawa => Specjalista/stka ds. Organizacji <=
- 2025-07-12 Warszawa => MENA New Business Manager <=
- 2025-07-12 Gdynia => Controlling systems Consultant <=
- 2025-07-12 Warszawa => Developer Microsoft Dynamics 365 Finance & Operations (D36
- 2025-07-12 Warszawa => Programista Microsoft Dynamics 365 Finance & Operations (D
- 2025-07-12 Warszawa => Dyrektor IT <=
- 2025-07-12 Warszawa => IT Director <=
- 2025-07-12 Czy wypowiedź Kaczyńskiego o Braunie jest skarżalna? ["działa z OBCEJ inspiracji"]
- 2025-07-11 Rejestrator temperatur - termopara, siec
- 2025-07-11 DPD, przeniesienie numerów z a2mobile i z Orange