Postado Março 12, 2017 8 anos Bom pessoal, to querendo entender toda a linguagem lua, sei que vai demorar, ja sei algumas coisas e no momento quero aprender sobre pairs e ipairs. Alguém experiente em scripting poderia me ajudar? Quero que criem algumas situações em que eu preciso usar pairs ou ipairs para resolver o caso, mas só me digam a resposta certa depois de eu postar o que eu achar que é. Pode ser? obs. não mandem situações dificeis, não sei usar isso ainda, então... obg gente, quero ter experiência com isso pra poder ajudar a comunidade futuramente, fixando códigos ou criando sistemas e eventos obg gente @xWhiteWolf @Fir3element @Vodkart @zipter98 Editado Março 12, 2017 8 anos por Sekk (veja o histórico de edições) GitHub: https://github.com/s3kk Conteúdo: [SERVER] Heromassa[GESIOR] Gesior 2012 modificado por Sekk[GESIOR] Shop Addons & Mounts - TFS 1.x[GESIOR] Outfitter para Characters e Rank[SISTEMA] Castle 24h[TALKACTION] Multi Element Wand[ACTION] Multi Elemental Arrow & Shield[PROGRAMAÇÃO] Compilar TFS 0.4 no Linux[PROGRAMAÇÃO] Compilando TFS 0.4 no MSVC(x64 e x32) [INFRAESTRUTURA] Configuração COMPLETA Google VM + Tibia 11.x
Postado Março 12, 2017 8 anos pairs = função next.. ela percorre toda a tabela independente dos dados ipairs = só percorre os pares de elementos numéricos. usar ipairs é semelhante ao usar for i = 1, #table do if not table[i] then break end -- código aqui end enquanto que o pairs itera sobre praticamente qualquer index: considera a tabela local table = { [1] = 1, [2] = 2, [3] = 3, [4] = nil [5] = 4, } Se eu usar ipairs e mandar printar ele vai printar 1, 2 e 3 mesmo tendo o 5 na tabela pq o 4 é nulo e ele cancela ali, O mesmo vale se os indexes forem strings. o pairs itera sobre qualquer coisa, ele printaria 1, 2, 3, 5 (4 não pq é nulo) porém o pairs utiliza uma função next e essa função não é determinística, ou seja, ele não vai retornar exatamente na ordem desejada, então toma cuidado quando usar pairs ou ipairs. Em geral pairs é muito util, mas precisa ter um cuidado especial ao utilizá-lo pq ele é bem mais complexo. Todos os meus trabalhos importantes estão na seção "Sobre mim" no meu perfil; Dá uma passada lá! "Há três caminhos para o fracasso: não ensinar o que se sabe, não praticar o que se ensina, e não perguntar o que se ignora." - São Beda (obg ao @Beeny por fazer essa linda sign <3)
Participe da conversa
Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.