例如,这是一小段代码。
#include <iostream>
struct coordinate {
int x, y;
};
coordinate shift(coordinate p, int offset) {
return {p.x + offset, p.y + offset};
}
int main(int argc, char *argv[]) {
coordinate p {1, 2};
coordinate p_s = shift(p, 3);
std::cout << "x: " << p_s.x << "\ty: " << p_s.y;
return 0;
}
Run Code Online (Sandbox Code Playgroud)
在函数中shift,我们看到 return 语句似乎返回一个初始值设定项列表。
虽然我理解这在语义上意味着什么,但我希望确认我是否理解它的编译结果。
编译器是否将shift函数解释为这样?
shift(coordinate p, int offset) {
coordinate p_ {p.x + offset, p.y + offset};
return p_;
}
Run Code Online (Sandbox Code Playgroud)
如果没有,那又如何呢?
感谢您的帮助。
我正在 Windows 7 下调试音频驱动程序。当我需要用更新版本替换它时,我必须重新启动系统,因为尽管驱动程序已卸载,但 DriverStore 下的当前驱动程序副本已被锁定。有没有办法避免重新启动?在 XP 上是可能的...