向量索引R
开始的原因是什么1
,而不是通常的0
?
例:
> arr<-c(10,20)
> arr[0]
numeric(0)
> arr[1]
[1] 10
> arr[2]
[1] 20
Run Code Online (Sandbox Code Playgroud)
只是他们想要存储关于矢量的额外信息,并且除了作为矢量的第一个元素之外,不知道在哪里存储它?
我有一个不是特别技术的快速问题,但我有时想知道什么更好......
您是否在数组,地图,集合等名称中使用单数或复数?例:
单数
1 std::map<string,double> age;
2 age["diego maradonna"] = 49;
Run Code Online (Sandbox Code Playgroud)
复数
1 std::map<string,double> ages;
2 ages["diego maradonna"] = 49;
Run Code Online (Sandbox Code Playgroud)
在复数版本中,第二行不好(因为你正在查看年龄,而不是Maradonna的年龄).在单数版本中,第一行听起来有点不对(因为地图包含许多年龄).
关于Boost::Thread
和我有一个新手问题Mutex
.
我想启动以下的许多并行实例Worker
,并且所有这些实例都写相同std::vector
:
struct Worker {
std::vector<double>* vec;
Worker(std::vector<double>* v) : vec(v) {}
void operator() {
// do some long computation and then add results to *vec, e.g.
for(std::size_t i = 0; i < vec->size(); ++i) {
(*vec)[i] += some_value;
}
}
};
Run Code Online (Sandbox Code Playgroud)
我明白工人必须vec
在写入之前锁定并在完成时将其解锁(因为所有工人都写入相同的向量).但是我该怎么表达呢?