<div dir="ltr"><div class="gmail_quote"><div dir="ltr">On Tue, Mar 13, 2018 at 11:05 PM Teodora Serbanescu via so <<a href="mailto:so@cursuri.cs.pub.ro">so@cursuri.cs.pub.ro</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div style="box-sizing:border-box;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:left;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;text-decoration-style:initial;text-decoration-color:initial;color:rgb(34,34,34);font-family:arial,sans-serif;font-size:small"><span style="box-sizing:border-box;color:rgb(51,51,51);font-family:Verdana,"Lucida Grande",Lucida,Helvetica,Arial,sans-serif;font-size:13px;text-align:justify">Bună seara,</span></div><span style="box-sizing:border-box;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;text-decoration-style:initial;text-decoration-color:initial;font-size:13px;color:rgb(51,51,51);font-family:Verdana,"Lucida Grande",Lucida,Helvetica,Arial,sans-serif;text-align:justify"><div style="box-sizing:border-box"><br style="box-sizing:border-box"></div><div style="box-sizing:border-box">Am o întrebare legată de una din precizările de la depunctări, care nu imi este foarte clar<span style="color:rgb(51,51,51);font-family:Verdana,"Lucida Grande",Lucida,Helvetica,Arial,sans-serif;font-size:13px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:justify;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial;float:none;display:inline">ă</span>:</div>"implementare netransparentă a hashtable-ului; operațiile pe hashtable nu abstractizează implementarea lui: nu există o abstractizare a obiectului hashtable sau operații clare asupra acestuia"</span></div></blockquote><div><br></div><div>Implementarea voastră trebuie să abstractizeze hashtable-ul ca un singur obiect, pe care să-l pasați funcțiilor voastre. Dacă implementarea voastră pasează spre exemplu de fiecare dată un vector de bucket-uri și un size, atunci nu este corect.</div><div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div style="box-sizing:border-box;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:left;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;text-decoration-style:initial;text-decoration-color:initial;color:rgb(34,34,34);font-family:arial,sans-serif;font-size:small"><span style="box-sizing:border-box;color:rgb(51,51,51);font-family:Verdana,"Lucida Grande",Lucida,Helvetica,Arial,sans-serif;text-align:justify"><br style="box-sizing:border-box"></span></div><div style="box-sizing:border-box;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:left;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;text-decoration-style:initial;text-decoration-color:initial;color:rgb(34,34,34);font-family:arial,sans-serif;font-size:small"><span style="box-sizing:border-box;color:rgb(51,51,51);font-family:Verdana,"Lucida Grande",Lucida,Helvetica,Arial,sans-serif;text-align:justify">În implementarea mea am folosit funcții cu număr variabil de parametri, astfel nefiind foarte clar modul de apelare al acestora doar din antetul funcției. În acest caz, se poate spune că nu se respectă condiția de mai sus sau "operații clare asupra acestuia" se referă strict la implementarea lor?</span></div></div></blockquote><div><br></div><div>Nu cred că o implementare cu funcții cu număr variabil de parametri este în regulă, nu văd de ce ai avea nevoie de așa ceva la tema asta (în afară de printf).</div><div>Din păcate nu am acces acum la tema ta (fep-ul este picat)[*] și nu pot să-ți dau un răspuns sigur acum, dar îți sugerez să scapi de funcțiile respective, sau să le păstrezi decât dacă nu se poate altfel.</div><div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div style="box-sizing:border-box;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:left;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;text-decoration-style:initial;text-decoration-color:initial;color:rgb(34,34,34);font-family:arial,sans-serif;font-size:small"><span style="box-sizing:border-box;color:rgb(51,51,51);font-family:Verdana,"Lucida Grande",Lucida,Helvetica,Arial,sans-serif;text-align:justify">De asemenea, mai mult o curiozitate. Sunt funcțiile cu număr variabil de parametri de obicei good/bad practice?</span></div></div></blockquote><div><br></div><div>Bad practice. Pe lângă faptul că este ineficient dpdv memorie și procesare, este și foarte greu de urmărit și debugat.</div><div><br></div><div>[*] Ăsta este unul din motivele pentru care vă sugerăm să faceti tema pe gitlab, pentru ca noi să avem acces mai ușor la codul vostru, să vă putem ajuta.<br></div><div><br></div><div>Numai bine,</div><div>Răzvan</div></div></div>