0
我想了解一個C++代碼。 (我是一個初學者,習慣了Java) 我真的非常想知道這裏發生了什麼。在C++中使用運算符減號( - )
所以我得到這個
Eigen::Vector2i mapDims;
Eigen::Vector2f mapLimits;
float cellLength;
和我的類的構造,看起來像這樣:
MapDimensionProperties(const Eigen::Vector2f& OffsetIn, const Eigen::Vector2i& mapDimsIn, float cellLengthIn)
: tOffset(OffsetIn)
, mapDims(mapDimsIn)
, cellLength(cellLengthIn)
{
// I don't understand the following part:
mapLimits = (mapDimensionsIn.cast<float>()).array() - 1.0f;
}
這到底是怎麼回事?我看到這個整型向量被轉換爲一個浮點向量,並且看起來後來變成了一個數組。但是,如何從數組中減去浮點數?我的意思是你不需要指出哪個地方你想要減去某些東西的具體指標? 它如何重寫mapLimits,如果它的Array和mapLimits是一個向量?
還是我完全錯了?
預先感謝您。
你應該看看操作符重載,和一個[良好的C++書](https://stackoverflow.com/questions/388242/the-definitive-c-book-guide-and-list) –
@PasserBy ...以及我知道這可能是一個愚蠢的問題,但我試圖研究它,似乎我甚至不知道如何恰當地說出我不知道的... – kalu
@PasserBy編輯:你知道在哪裏我可以查看運營商是如何運行Eigen :: Vector2f – kalu