我正在尝试访问成员结构变量,但我似乎无法使语法正确.两个编译错误pr.访问是:错误C2274:'function-style cast':非法作为'.'的右侧.运算符错误C2228:'.altdata'的左边必须有class/struct/union我已尝试过各种更改,但都没有成功.
#include <iostream>
using std::cout;
class Foo{
public:
struct Bar{
int otherdata;
};
int somedata;
};
int main(){
Foo foo;
foo.Bar.otherdata = 5;
cout << foo.Bar.otherdata;
return 0;
}
Run Code Online (Sandbox Code Playgroud) 如果在执行finalize()期间抛出异常会发生什么?堆栈是否正常放松?它是否继续finalize()并忽略该异常?它是否会停止finalize()并继续GC对象?或者是其他东西?
我不是在寻找使用finalize()的指导方针.有很多页面解释了这一点.
为什么std :: vector的随机删除比std :: list更快?我正在做的是加快速度,将随机元素与最后一个交换,然后删除最后一个元素.我原以为列表会更快,因为随机删除就是为它构建的.
for(int i = 500; i < 600; i++){
swap(vector1[i], vector1[vector1.size()-1]);
vector1.pop_back();
}
for(int i = 0; i < 100; i++){
list1.pop_front();
}
Run Code Online (Sandbox Code Playgroud)
结果(以秒为单位):
Vec swap delete:0.00000909461232367903
列表正常删除:0.00011785102105932310