Article View: pl.comp.lang.c
Article #309453Wołanie variadic z variadic z inną liczbą stałych parametrów
From: Borneq
Date: Tue, 19 Sep 2017 10:51
Date: Tue, 19 Sep 2017 10:51
28 lines
1980 bytes
1980 bytes
Gdy mamy taką samą stałą liczbę parametrów:
https://stackoverflow.com/questions/16447951/how-to-forward-variable-number-of-arguments-to-another-function
Ale ja mam:
void vrequest(string fmt, va_list &ap);
void request(string fmt, ...);
funkcje ogólne:
Funkcja konkretna:
void HBaseClient::testVar(uint8_t alone, uint8_t numVar, ...) {
va_list argptr;
va_start(argptr, numVar);
//vrequest("i8i8v8i16s8", testVAR, alone, numGroup, argptr);<--HERE
va_end(argptr);
RetObj ro;
response(ro);
if (ro.type != RetObjEnum::void_t) throw Exception("bad return
testVar");
}
Ma pewną stała liczbę parametrów jak "alone", parametr "numVar"
określający ilość parametrów zmiennych i parametry zmienne.
do vrequest przesyłam znaczniki w postaci tekstowej, identyfikator
testVAR, parametry stałe jak "alone" i "numVar" a dopiero potem
parametry zmienne
Na stackoverflow.com było proste przesyłanie va_list, tu potrzebna
manipulacja - stworzenie drugiej listy składającej się ze stałych i z
listy argptr.
Technical Details
Message-ID:
<opqssa$7pc$1@node1.news.atman.pl>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed2.atman.pl!newsfeed.atman.pl!.POSTED!not-for-mailShow Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed2.atman.pl!newsfeed.atman.pl!.POSTED!not-for-mail From: Borneq <borneq@antyspam.hidden.pl> Newsgroups: pl.comp.lang.c Subject: Wołanie variadic z variadic z inną liczbą stałych parametrów Date: Tue, 19 Sep 2017 12:51:53 +0200 Organization: ATMAN - ATM S.A. Lines: 29 Message-ID: <opqssa$7pc$1@node1.news.atman.pl> NNTP-Posting-Host: public-gprs353855.centertel.pl Mime-Version: 1.0 X-Trace: node1.news.atman.pl 1505818314 7980 37.47.13.128 (19 Sep 2017 10:51:54 GMT) X-Complaints-To: usenet@atman.pl NNTP-Posting-Date: Tue, 19 Sep 2017 10:51:54 +0000 (UTC) User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:52.0) Gecko/20100101 Thunderbird/52.3.0 X-Mozilla-News-Host: news://news.atman.pl:119 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit