以下方法无法编译:
public <K extends Middle> K test(K a, K b) {
return a.test(); //a.test() returns Middle
}
Run Code Online (Sandbox Code Playgroud)
如果我们设置K
为子类型Middle
,那么Middle
应该可以返回,对吧?
如果我执行以下操作:return (K)a.test();
,它编译...
mingw gcc 7.3/windows 10; gcc 6.3 debian 9
以下程序,如果X设置为1,它将在debian上正常运行.如果X设置为2,它将立即在debian上中止.但在Windows上可以是900,它将不会中止与不同的输出......
int main() {
vector<int> asdf (5);
unsigned int X = 2;
for (unsigned int i = 0; i < asdf.size() + X; i++) {
asdf[i] = i;
cout << asdf[i] << "; ";
}
cout << '\n';
return 0;
}
Run Code Online (Sandbox Code Playgroud)