-
Path: news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed2.atman.pl!newsfeed.atman.pl!.P
OSTED!not-for-mail
From: Marek <t...@f...pl>
Newsgroups: pl.misc.elektronika
Subject: Re: [Arduino] Switch... case
Date: Sun, 14 Oct 2018 12:36:39 +0200
Organization: ATMAN - ATM S.A.
Lines: 61
Message-ID: <ppv67o$u50$1@node2.news.atman.pl>
References: <ppuu8j$ahb$1$michal@news.chmurka.net>
NNTP-Posting-Host: host8.router8.tygrys.net
Mime-Version: 1.0
Content-Type: text/plain; charset=iso-8859-2; format=flowed
Content-Transfer-Encoding: 8bit
X-Trace: node2.news.atman.pl 1539513400 30880 213.108.119.8 (14 Oct 2018 10:36:40
GMT)
X-Complaints-To: u...@a...pl
NNTP-Posting-Date: Sun, 14 Oct 2018 10:36:40 +0000 (UTC)
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:60.0) Gecko/20100101
Thunderbird/60.2.1
In-Reply-To: <ppuu8j$ahb$1$michal@news.chmurka.net>
Content-Language: pl
Xref: news-archive.icm.edu.pl pl.misc.elektronika:737457
[ ukryj nagłówki ]W dniu 14.10.2018 o 10:20, Michal M. Lechanski pisze:
> switch ... case dopuszcza tylko dane typu int i char, mnie wygodnie by
> było użyć String.
> Czy istnieje podobna funkcja pozwalająca operować na danych typu string?
Enum Twoim przyjacielem, który Ci pomoże:
typedef enum TZwierzaki
{
enKotki,
enPieski,
enKrowki,
enKozki,
enSwinki
};
TZwierzaki zwierzaki = enPieski; //wartość domyślna
string ZwierzakiStr = "Pieski";
Przykład użycia:
if (miaauu)
{
ZwierzakiStr = "Kotki";
zwierzaki = enKotki;
}
if (haauu)
{
ZwierzakiStr = "Pieski";
zwierzaki = enPieski;
}
switch (zwierzaki)
{
case enKotki: {
}
break;
case enPieski: {
}
break;
case enKrowki: {
}
break;
default: { //dla enKozki i enSwinki
}
}
Można też po każdym "case" wstawić funkcję konwertująca łańcuch do elementu ze
zbioru
TZwierzaki (w necie pełno przykładów, wystarczy chwilę poszukać), ale powyższe
rozwiązanie
jest proste, przejrzyste i daje możliwość wykorzystania zmiennej "zwierzaki" do
różnych
celów, np. w GUI po rzutowaniu na int do ustawiania np. indeksu listy rozwijalnej
(ComboBox) lub po rzutowaniu indeksu z int na typ TZwierzaki do odczytu z tejże listy
wybranego zwierzęcia.
--
Pzdr.
Marek
Następne wpisy z tego wątku
- 14.10.18 13:58 J.F.
- 14.10.18 23:06 Michal M. Lechanski
- 19.10.18 21:27 Mateusz Bogusz
Najnowsze wątki z tej grupy
- Silikonowy przewód ekranowany
- Wtyk bananowy ekranowany
- Co może być gorsze od pożaru elektryka?
- daltonizm
- Mały Linux
- Superkondensator. Czy to się uda?
- Stare filmy o technice
- Zasilanie własnych konstrukcji przez PoE
- Jak działa domofon?
- Co oni mierzą miernikiem
- 40 lat OrCAD-a
- Multimetr z bluetooth
- Ciekawa mapka z BTS-ami
- Lampy uliczne LED z kubkiem
- Pęczniejące LiPo
Najnowsze wątki
- 2025-10-28 Silikonowy przewód ekranowany
- 2025-10-28 Wtyk bananowy ekranowany
- 2025-10-28 Chiny => Koordynator Produkcji / Przedstawiciel ds. rozwoju produktu <
- 2025-10-28 Warszawa => BI Developer <=
- 2025-10-28 Warszawa => Engineering Manager <=
- 2025-10-27 Priority pass i fast track z visa platinum santandera.
- 2025-10-27 #Motodziennik Używane - OGROMNE PRZEBIEGI - najlepsze silniki diesla i benzynowe ostatnio
- 2025-10-27 Dlaczego Heweliusz zatonął? Kulisy tragedii I Heweliusz. Prawdziwa historia #1
- 2025-10-27 Telefony z Androidem są bardzo bezpiecznym kanałem zarządzanie kontem bankowym
- 2025-10-27 logowanie VW
- 2025-10-27 Taka CISZA a z banków ZNIKAJĄ PIENIĄDZE
- 2025-10-27 Warszawa => Generative AI Engineer <=
- 2025-10-27 Warszawa => Gen AI Engineer <=
- 2025-10-27 Warszawa => Dyrektor IT <=
- 2025-10-27 Warszawa => Spedytor Międzynarodowy <=




Zalety drzwi aluminiowych w nowoczesnych projektach architektonicznych