|
1
52
根据您的需求,您应该使用
|
|
|
2
21
鉴于你最初的问题陈述,
不需要创建自己的列表类(无论如何,这不是一个明智的设计选择,因为
你仍然可以通过使用来实现你想要的东西
|
|
|
3
10
所有模板代码都应该放在头文件中。此填充修复了链接问题(这是最简单的方法)。 发生这种情况的原因是编译器将每个源(.cc)文件与其他文件分开编译。另一方面,它需要知道它到底需要创建什么代码(即模板中的T被替换为什么),并且它没有其他方法来知道它,除非程序员在模板实例化发生时明确地告诉它或包括所有代码。也就是说,当mylist.cc被编译时,它对mylist用户和需要创建的代码一无所知。另一方面,如果编译了listuser.cc,并且所有mylist代码都存在,编译器将创建所需的mylist代码。你可以在 here 或者在Stroustrup。 你的代码有问题,如果用户请求负数或太大(超过列表中的元素数量)怎么办。我没有看太多。 此外,我不知道你打算如何使用它,但你的运算符[]是O(N)时间,这可能很容易导致O(N*N)循环。.. |
|
|
4
6
矢量具有 erase method 这可以去除元素。这还不够吗? |
|
5
5
除了其他优秀的注释外,扩展标准容器的最佳方式不是派生,而是编写自由函数。例如,看看如何
Boost String Algorithms
可用于扩展
|
|
|
6
1
您必须将所有模板代码移动到标题中。 |
|
7
1
显而易见的事情已经详细描述过了:
但是你选择实施的方法呢??
|
|
|
8
0
不需要调用std::list的析构函数,因为当析构函数自动调用myList时,你已经从std::list派生了std::list析构函数。 |
|
|
sungjun cho · 函数模板重叠多个匹配项 1 年前 |
|
|
Amaterastis · 基类接受子类和内部子类的模板参数 1 年前 |
|
|
111111 · 确定作为模板参数传递的函数的参数类型 1 年前 |
|
|
Sam · 在LaTeX中将图像添加到预制的投影仪中 1 年前 |
|
|
user416983 · 模板函数成员作为模板参数 1 年前 |
|
|
PyOPTProblem · c++如何模板化模板参数的部分实例化? 1 年前 |