问题标签 [specialization]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
5 回答
6790 浏览

c++ - 基于整数类型的“有符号”的部分模板专业化?

鉴于:

unsigned类型一起使用时会产生警告:

n >= 0有没有什么聪明的方法不做类型的T比较unsigned?我尝试添加部分模板专业化:

但 gcc 4.2.1 不喜欢这样。(无论如何,我不认为这种部分模板专业化是合法的。)

0 投票
5 回答
675 浏览

c++ - 如何以不同的方式专门化 typedef 及其隐式类型?

我有这样的事情:

我真的不需要专门研究 int,我真正需要的是为 AnotherType 执行不同的函数。而且我无法更改 AnotherType 或基本函数的定义。

由于 SFINAE,重载也无济于事。

0 投票
2 回答
300 浏览

c++ - 嵌套在非特化类中的成员类的特化

我怎样才能以同样的方式专注于 B,但在 A 之外。我尝试了这个但没有成功:

我得到:

error C3212: 'A<T>::B<int>' : an explicit specialization of a template member must be a member of an explicit specialization

这是没有意义的,因为我可以通过在类中定义它来做到这一点

VS2010的问题?语法错误?

谢谢


PS:这个(无论如何应该是错误的,崩溃VS2010):

0 投票
3 回答
2980 浏览

c++ - 双模板方法的部分特化失败

有模板类List。

如何专门化 N=2 的方法负载?此代码无效...

而且这段代码也不起作用。

编译器 g++:

0 投票
2 回答
7182 浏览

c++ - 模板 << 和 >> 运算符特化

我想在一个类中对>>and<<运算符进行模板化,但我也想将它们专门用于字符串,所以我这样做了;

但我得到了一些编译器错误:

我将如何解决这些错误?

0 投票
5 回答
824 浏览

c++ - 特定模板特化的重载成员函数

我有一个类 tPoint 将实现具有不同的基本类型,所以

当类型 T 是 int, 时tPoint<int>,我想要一个特殊的 Set(float, float) 以便在分配之前对值进行四舍五入。

我认为通过专业化我可以:

这样编译器就会抱怨类定义中没有匹配的函数。

但是如果我在类 Set(float,float) 中声明,那么它说已经定义了(当它编译为 T =float 时)

我希望我说清楚了,什么是干净的方法,或者我做错了什么?谢谢!

0 投票
3 回答
323 浏览

c# - 如何在 C# 中实现某种程度的多态性?

这是我最近试图解决的问题的简化版本。我有以下两个课程:

现在我想做:

实现此功能的最佳方法是什么?有可能吗?我想我可能已经解决了这个问题,但我认为这是一种解决方法,我正在寻找一些设计模式。

提前感谢您的回复,米哈尔。

附言

我尝试了接口、虚函数、抽象类、抽象函数;甚至在超类中创建函数,通过名称调用真实类型的属性(使用反射)......我仍然无法实现我想要的......

0 投票
6 回答
713 浏览

c++ - 在具有部分特化的 C++ 中使用模板展开循环

我正在尝试使用模板在 C++ 中展开循环,如下所示。

当我在 Cygwin 中编译 w/g++ 3.4.4 时,出现以下错误。

tmp.cpp:12:错误:类型T' of template argument0' 取决于模板参数

我究竟做错了什么?我是否需要以某种方式注释 0 以说明它是 T 类型?

提前致谢。

0 投票
2 回答
913 浏览

c++ - 非具体类型的 C++ 模板特化(另一个模板类!)

我正在移植一些代码以在某些地方使用智能指针,并且遇到了专业化问题。在具体类型上专门化模板函数非常简单,但是如果我想在另一个模板化类(在我的例子中是 std::auto_ptr)上专门化特定方法怎么办?我似乎找不到正确的魔法词来让我的编译器不哭。

这是一个代码示例:

当类型为 std::auto_ptr 时,我正在尝试覆盖 tSomeContainer::getInterfacePtr() 方法,但我就是做不到

0 投票
3 回答
97172 浏览

c++ - 模板类成员函数的显式特化

我需要为某种类型专门化模板成员函数(比如说double)。当类X本身不是模板类时,它可以正常工作,但是当我制作模板时,GCC 开始给出编译时错误。

这是错误消息

我该如何解决这个问题,这里有什么问题?

提前致谢。