{"conversations": [{"from": "user", "value": "Estic intentant obtenir una deducci\u00f3 autom\u00e0tica de l' argument de plantilla per a treballar en C++. He escrit una funci\u00f3 que accepta un std::map amb dos tipus arbitraris com a entrada, i retorna una variable amb el primer tipus com a sortida. El seg\u00fcent exemple funciona i compila amb \u00e8xit: stxumd::: <mapstd:: seguit, ent> map1\" = 1; text1 =(map1, 1); L' ordre gardel seg\u00fcent no funciona: stpdmap: < stint, stint: mapa: mtd > row2nya; en la clau \"2nya\" =(2keymap, \"2\"), que no pot deduir que \u00e9s el mapa del mapa."}, {"from": "assistant", "value": "M' estaria content d' ajudar amb la vostra pregunta! La ra\u00f3 per la qual el compilador t\u00e9 problemes per a augmentar els tipus emprats pel mapa en el vostre segon exemple \u00e9s que l' ordre dels tipus en el mapa ha canviat des del primer exemple. En el primer exemple, el tipus de clau \u00e9s un std: la cadena i el tipus de valor \u00e9s un int. De tota manera, en el segon exemple, el tipus clau \u00e9s un punt i el tipus \u00e9s un std:. Aquesta difer\u00e8ncia en l' ordenaci\u00f3 est\u00e0 fent que el compilador tingui el problema per a usar els tipus correctes a la funci\u00f3 cridada. Per resoldre aquest problema, podeu especificar expl\u00edcitament els tipus de cridant, com ara la funci\u00f3: en la clau = < stkey, stint: < slanclanclament: \">,\" i el valor correcte per als tipus de la plantilla. Per exemple: \"0. Per exemple: \"0."}, {"from": "user", "value": "S\u00e9 que l' ordre \u00e9s diferent, que vaig escriure l' exemple."}, {"from": "assistant", "value": "Demano disculpes per a la confusi\u00f3 causada per la meva resposta anterior. La plantilla autom\u00e0tica funciona en el primer exemple perqu\u00e8 el tipus s' especifica expl\u00edcitament - kABLEBIBUTE1 s' ha declarat d' estar d' un tipus kestd: cadena:::: cadena p\u00edxels. El segon exemple falla perqu\u00e8 el tipus de text literal Ahffie \" cvs\" s' assumeix que s' ha de ser l' ordre SUBcont* 1, que te conflictes amb el tipus d' Allowzelmap2 (ktd: xarup). L' error es pot establir expl\u00edcitament el tipus de la plantilla kepelp: ket=< key2int, getint: lt2 keymap, \"hyphayp], o b\u00e9 usant el nom d' espai literal: keplis: xplis_ ffelplis_ ff;."}]}