这篇文章主要介绍了C++如何使用模板实现一个List,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。
我们提供的服务有:成都网站建设、网站建设、微信公众号开发、网站优化、网站认证、沈丘ssl等。为上千家企事业单位解决了网站和推广的问题。提供周到的售前咨询和贴心的售后服务,是有科学管理、有技术的沈丘网站制作公司C ++使用模板写的一个List
templateclass List { private: struct Node { T data; Node *next; }; //head Node *head; //size int length; //process Node *p; //temp Node *q; public: List() { head = NULL; length = 0; p = NULL; } void add(T t) { if(head == NULL) { q = new Node(); q->data = t; q->next = NULL; length ++ ; head = q ; p = head; } else { q = new Node(); q->data = t; q->next = NULL; length ++; p -> next = q; p = q; } } void remove(int n) { if(n >= length ) { return; } length -- ; //删除头节点 if(n == 0) { q = head ; head = head -> next; delete(q); } else { q = head; for(int i = 0 ; i < n-1 ; i++) { q = q -> next; } Node *t = q ->next; q->next = q->next ->next; delete(t); } // p = head; if (p != NULL) { while(p->next != NULL) { p = p->next; } } } int getSize() { return length; } int getLength() { return getSize(); } T get(int n) { q = head; for (int i = 0 ;i < n ; i++) { q = q->next; } return q->data; } };
调用方式如下
Listlist; Stu stu1; Stu stu2; Stu stu3; stu1.username = "1"; stu2.username = "2"; stu3.username = "3"; list.add(stu1); list.remove(0); list.add(stu2); list.add(stu3); for (int i = 0 ;i < list.getSize() ; i ++) { cout << list.get(i).username; }
感谢你能够认真阅读完这篇文章,希望小编分享的“C++如何使用模板实现一个List”这篇文章对大家有帮助,同时也希望大家多多支持创新互联建站,关注创新互联网站建设公司行业资讯频道,更多相关知识等着你来学习!
另外有需要云服务器可以了解下创新互联建站www.cdcxhl.com,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
售后响应及时
7×24小时客服热线数据备份
更安全、更高效、更稳定价格公道精准
项目经理精准报价不弄虚作假合作无风险
重合同讲信誉,无效全额退款