这个时候最重要的是什么?我知道我以后可以获得编程经验.我毕业后应该学习以下哪一项才能成为优秀的程序员或分析师?
[编辑]
谢谢你的回答.我想将其他重要主题作为其他学生的参考:
[/编辑]
注意:我认为列表中的第一项应该是学习英语
以下代码打印:
generic
overload
Run Code Online (Sandbox Code Playgroud)
但我想要的是在两种情况下都调用了重载或特化,而不是通用的.我不是试图将重载与模板专业化混合在一起,因为它们没有像我预期的那样工作.是否有任何模板魔法来实现这一目标?
#include <iostream>
class Interface {};
class Impl: public Interface {};
class Bar
{
public:
template<typename T> void foo(T& t) {
std::cout << "generic\n";
}
void foo(Interface& t) {
std::cout << "overload\n";
}
};
template<> void Bar::foo<Interface>(Interface& t) {
std::cout << "specialization\n";
}
int main() {
Bar bar;
Impl impl;
Interface& interface = impl;
bar.foo(impl);
bar.foo(interface);
return 0;
}
Run Code Online (Sandbox Code Playgroud)