«variadic-functions» etiketlenmiş sorular

Değişken sayıda bağımsız değişken kabul edebilen bir işlev değişkendir; yani, uyuşması sabit değildir. "Varargs" kısaltması genellikle bu tür işlevlere atıfta bulunmak için kullanılır.



7
Go'da iki dilimi birleştirin
Ben dilim [1, 2]ve dilim birleştirmeye çalışıyorum [3, 4]. Bunu Go'da nasıl yapabilirim? Denedim: append([]int{1,2}, []int{3,4}) ama var: cannot use []int literal (type []int) as type int in append Ancak, belgeler bunun mümkün olduğunu gösteriyor, ne eksik? slice = append(slice, anotherSlice...)


21
“Argümanlar” nesnesini JavaScript'teki bir diziye nasıl dönüştürebilirim?
Bu yayını iyileştirmek ister misiniz? Alıntılar ve cevabınızın neden doğru olduğuna dair bir açıklama da dahil olmak üzere bu soruya ayrıntılı cevaplar verin. Yeterli ayrıntıya sahip olmayan yanıtlar düzenlenebilir veya silinebilir. argumentsJavaScript nesne garip bir siğil-sadece çoğu durumda bir dizi gibi davranan, ama değil aslında bir dizi nesne. Öyle yana …


10
Değişken sayıda argümanın aktarılması
Değişken sayıda bağımsız değişken alan bir C işlevim olduğunu varsayalım: İlk işleve gelen tüm bağımsız değişkenleri geçirerek değişken sayıda bağımsız değişken bekleyen başka bir işlevi nasıl arayabilirim? Misal: void format_string(char *fmt, ...); void debug_print(int dbg_lvl, char *fmt, ...) { format_string(fmt, /* how do I pass all the arguments from '...'? …


5
Java'da değişken argümanları olan bir yönteme bir dizi bağımsız değişken olarak iletebilir miyim?
Gibi bir işlev oluşturmak istiyorum: class A { private String extraVar; public String myFormat(String format, Object ... args){ return String.format(format, extraVar, args); } } Burada sorun olduğunu argsolarak kabul edilir Object[]yöntemde myFormatve böylece tek bir argümandır String.formatben her isterim ederken, Objectiçinde argsyeni bir argüman olarak geçirilecek. Yana String.formatda değişken bağımsız …

4
ArrayList'i varargs yöntem parametresine nasıl geçirebilirim?
Temelde konumların bir ArrayList var: ArrayList<WorldLocation> locations = new ArrayList<WorldLocation>(); bunun altında aşağıdaki yöntemi çağırıyorum: .getMap(); getMap () yöntemindeki parametreler şunlardır: getMap(WorldLocation... locations) Yaşadığım sorun, BÜTÜN listesine locationsbu yönteme nasıl geçeceğinden emin değilim . denedim .getMap(locations.toArray()) ancak getMap bunu kabul etmez çünkü Nesneleri kabul etmez []. Şimdi kullanırsam .getMap(locations.get(0)); mükemmel …

8
Java'da varargs ne zaman kullanılır?
Korkarım varargs. Onları ne için kullanacağımı bilmiyorum. Ayrıca, insanların istedikleri kadar argüman geçirmelerine izin vermek tehlikeli hissettiriyor. Bunları kullanmak için iyi bir yer olabilecek bir bağlam örneği nedir?

2
Java SafeVarargs ek açıklaması, standart veya en iyi uygulama var mı?
Geçenlerde java @SafeVarargsnotuna rastladım . Java'da değişken bir işlevi yapan şey için googling yapmak beni oldukça karışık bıraktı (yığın zehirlenmesi? Silinen tipler?), Bu yüzden birkaç şey bilmek istiyorum: Değişken bir Java işlevini bu @SafeVarargsanlamda güvensiz yapan nedir (tercihen derinlemesine bir örnek şeklinde açıklanır)? Bu ek açıklama neden programcının takdirine bırakılmıştır? …

12
Bir JavaScript işlevine değişken sayıda bağımsız değişken göndermek mümkün müdür?
Bir diziden bir JavaScript işlevine değişken sayıda bağımsız değişken göndermek mümkün müdür? var arr = ['a','b','c'] var func = function() { // debug alert(arguments.length); // for(arg in arguments) alert(arg); } func('a','b','c','d'); // prints 4 which is what I want, then 'a','b','c','d' func(arr); // prints 1, then 'Array' Son zamanlarda bir …

9
Mocararto'da Varargs Nasıl Düzgün Eşleştirilir
Mockito kullanarak vararg parametreleri ile bir yöntem alay etmeye çalışıyorum: interface A { B b(int x, int y, C... c); } A a = mock(A.class); B b = mock(B.class); when(a.b(anyInt(), anyInt(), any(C[].class))).thenReturn(b); assertEquals(b, a.b(1, 2)); Bu işe yaramaz, ancak bunun yerine bunu yaparsanız: when(a.b(anyInt(), anyInt())).thenReturn(b); assertEquals(b, a.b(1, 2)); Bu işe …


Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.