- Multifunkciós adattároló érkezett a Patriot színeiben
- Egyedi megjelenésű Radeon VGA a Yeston és a GravaStar keze nyomán
- 5:4 képarányú SXGA monitor jön ősszel az EIZO berkeiből
- Úgy tér vissza a Commodore 64, ahogy titkon mindenki várja
- A hírek szerint a jövő év végére érkezhet a sokat pletykált NVIDIA N1X SoC
-
PROHARDVER!
Arduino hardverrel és szoftverrel foglakozó téma. Minden mikrovezérlő ami arduinoval programozható, és minden arduino program, board, és hardverrel kapcsolatos kérdések helye.
Új hozzászólás Aktív témák
-
Janos250
őstag
válasz
ekkold #16588 üzenetére
Hogyan tudunk függvénybe bevinni előre meg nem határozott számú paramétert?
Közben csináltam mintapéldát, hogyan tudjuk belerakni containerbe, akármennyi van is, és a függvényben iteratorral annyit használunk fel, amennyi van./*
mintapelda elore meg nem hatarozott szamu parameter atadasa fuggvenybe iteratorral
Minden olyan container hasznalhato, aminek van .begin() es .end() iteratora
peldaul: vector, list, deque, map, set, stack, stb
*/
using namespace std;
//void parameterAtadasVectorral(auto parameter){ // ez csak C++14 -tol el
void parameterAtadasVectorral(vector <int> parameter){
Serial.println("\nfelhasznaljuk a vector elemeit:");
for (auto i = parameter.begin(); i != parameter.end(); ++i){
//vagy: for (vector<int>::iterator i = parameter.begin(); i != parameter.end(); ++i){
Serial.println(*i);
};
} ;
void parameterAtadasListaval(list <int> parameter){
Serial.println("\nfelhasznaljuk a lista elemeit:");
for (auto i = parameter.begin(); i != parameter.end(); ++i){
Serial.println(*i);
};
} ;
void parameterAtadasDequeSorral(std::deque <String> parameter){
Serial.println("\nfelhasznaljuk a deque elemeit:");
for (auto i = parameter.begin(); i != parameter.end(); ++i){
Serial.println(*i);
};
} ;
void setup() {
Serial.begin(115200);
delay(1000);
vector <int> enVectorom {10,115} ;
enVectorom.push_back(8); // a vegere betesz egy elemet
parameterAtadasVectorral(enVectorom) ;
std::list<int> enListam = { 9,7,3,29 };
enListam.push_back(50);
parameterAtadasListaval(enListam) ;
std::deque<String> enDqueueDuplaveguSorom= { "macska","kutya","lo" };
enDqueueDuplaveguSorom.push_front("kismalac"); // elejere teszi
enDqueueDuplaveguSorom.push_back("pipi"); // veger teszi
parameterAtadasDequeSorral(enDqueueDuplaveguSorom) ;
} ;
void loop() {
};
/*
Ezt irja ki:
felhasznaljuk a vector elemeit:
10
115
8
felhasznaljuk a lista elemeit:
9
7
3
29
50
felhasznaljuk a deque elemeit:
kismalac
macska
kutya
lo
pipi
*/ -
Janos250
őstag
válasz
ekkold #16588 üzenetére
Na, csináltam egy memory refresht.
Így is lehet olyan függvényt írni, aminek változó számú paramétere van/*
mintapelda variadic function hasznalatara, azaz
hogyan lehet irni olyan fuggvényt, aminek valtozo szamu parametere van
*/
using namespace std;
void tobbParameter(int hanyParameter...){
va_list argumentumok;
//egyeb deklaraciok, ha kell
va_start(argumentumok,hanyParameter);
// az "argumentumok" lista inicializalasa
for (int i = 0; i < hanyParameter; i++){
int soronKovetkezoParameter = va_arg (argumentumok, int) ;
Serial.println(soronKovetkezoParameter);
};
va_end(argumentumok);
// az "argumentumok" lista bezarasa
} ;
void setup() {
Serial.begin(115200);
delay(1000);
tobbParameter(3,5,10,8);
// 3 parameter lesz meg a 3 utan, amit fel kell dolgozni
} ;
void loop() {
};
/*
ezt irja ki:
5
10
8
*/
Új hozzászólás Aktív témák
Hirdetés
- Bomba ár! Dell Latitude E7250 - i7-5GEN I 8GB I 256SSD I 12,5" HD I HDMI I Cam I W10 I Garancia!
- 134 - Lenovo Legion Pro 7 (16IRX8H) - Intel Core i9-13900HX, RTX 4090
- Nexus 6P 32GB, Kártyafüggetlen, 1 Év Garanciával
- KIÁRUSÍTÁS - REFURBISHED és ÚJ - Lenovo ThinkPad Ultra Docking Station (40AJ)
- Intel Core i7-8700, i7-9700 CPU, processzor - Számla, garancia
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest