Sie können es ohne %code% machen:
%Vor%Ich habe das folgende %code% zu einem %code% :
%Vor%und ich möchte es mit braced-init initialisieren. Ist es möglich?
Ich habe es versucht:
%Vor%aber das gibt den folgenden Fehler, wenn mit Xcode 6.3 kompiliert wird:
%Vor%Ich habe andere Varianten des ersten Parameters (1000.0) ohne Erfolg ausprobiert.
Kann jemand helfen?
Ihr Problem besteht darin, dass Sie keine Klammern in Ihren Initialisierer eingefügt haben. Ich brauchte Folgendes, um es zum Laufen zu bringen:
%Vor%Die doppelte %code% Bugs mich. Es sollte wirklich in der Lage sein, einen von ihnen mit dem anderen auszuarbeiten ... aber gcc 5.3.0 würde keinen Ball spielen.
Sie werden definitiv die Doppelstreben brauchen. (Einmal sagen Sie, dass Sie eine Karte initialisieren, einmal um jeden Eintrag zu begrenzen.)
%code% hat einen Initialisierungslisten-Konstruktor:
%Vor%Wir können mit diesem Konstruktor ganz einfach eine Map erstellen:
%Vor%Um es in %code% zu verwenden, müssen wir angeben, welche Instanz von %code% wir bereitstellen:
%Vor%Das sieht wirklich ungeschickt aus; aber wenn Sie das regelmäßig brauchen, können Sie es mit Aliasen aufräumen:
%Vor%Sie könnten stattdessen lieber eine Vorlagenfunktion definieren, um den Anruf zu umbrechen:
%Vor%Etwas Ähnliches sollte es tun ...
%Vor%oder als oneliner
%Vor%(Sorry, zuerst verpasste die Anforderung für die Initialisierungsliste)
Ändern Sie den Typ des Schlüssels.
%code% ist ein falscher Typ für Schlüssel, da es kein %code% dafür gibt und verschiedene Bytefolgen denselben Fließkommawert darstellen können.