错误、漏洞、问题 - 页 1966

 
A100:
我的意思是,把一个方法放在一个类之外的可能性是很方便的。

是的,你就这样折磨啊折磨,然后发现你应该知道某些秘密)。

也许他们也有图案类的专业性?我不知道,但我肯定他们有一些巧妙的方法。我在服务台问了他们很久,他们都保持沉默。可能,他们也有一些秘密。溢出 )

 
Alexey Navoykov:

也许他们也有专门的图案类?

这么久以前的事了!

关于交易、自动交易系统和交易策略测试的论坛

虫子、虫子、问题

fxsaber, 2017.08.16 13:19

typedef void (*fn)();

template<typename T>
void g( T Value ) { Print(typename(Value)); }
void f() {}

void g( fn Value ) { Print(typename(Value)); }
void OnStart()
{
        g( f ); // void(*fn)()
}

还是有别的想法?


ZS发现了它

 
fxsaber:

那是多长时间以前的事了!

还是有别的想法?

ZS发现了它

不,我说的是类模板,不是函数。

顺便说一下,函数模板的专业化实际上还没有实现。出于某种原因,他们在你的链接中所说的 "专业化 "实际上是完全不同的。而现在只有用特定类型重载的可能性。这几乎与专业化相同,唯一的区别是,编译器不控制所有重载函数的签名是否相同。当函数在代码中处于不同的位置时,这是必要的。

 
A100:

这样就更方便了。

在没有专业的情况下。
 
Alexey Navoykov:

顺便说一下,函数模板的专业化还没有真正实现。他们在你的链接中所说的 "专业化 "并不是真正意义上的专业化。而现在只有用特定的类型进行重载的可能性。这几乎与专业化相同,唯一的区别是,编译器不控制所有重载函数的签名身份。当函数位于不同的代码片段中时,你可能需要它。

不举个例子我就不明白。

 
fxsaber:

没有例子,我不明白。

事实上,当我说 "几乎一样 "时,我夸大了。两者的区别是很大的,因为只有函数参数 可以被重载,而模板中可能有其他与参数无关的类型名。而且它们只能是专业化的。例如,一个完全没有参数的模板。

template<typename T>
void f() { }

template<>
void f<int>() { }
 
Alexey Navoykov:
没有争论的专门化?)))将专攻什么?
 
Комбинатор:
没有争论的专门化?)))那么,这个专业将是什么?
好吧,你必须在函数的主体 中决定这一点。这里有什么问题吗?我经常有这样的需求。我必须通过传递一个假的参数来解决这个问题,这是很紧要的。
 
Alexey Navoykov:
这有什么大不了的?
如果你能让它在专业人员中编译和运行,那就没有什么了)
 

一切都在Draw编译完成后被修复,但这是一个事实。

我应该补充的是:情况重复了--启动的不是任何未编译的专家顾问,而是 ExpertMACD。