当我们想要创建一个新的矢量3D类时,我不知道哪种是最佳实践,我的意思是,这两个例子中哪一个是最好的方法?
class Vec3D
{
private:
float m_fX;
float m_fY;
float m_fZ;
...
};
Run Code Online (Sandbox Code Playgroud)
要么
class Vec3D
{
private:
float m_vVec[3];
...
};
Run Code Online (Sandbox Code Playgroud)
对于第一个方法,我们有单独的变量,我们确保在内存中确保连续,因此缓存可能会失败,但访问此变量只是一条指令.
对于第二个方法,我们在内存中有一个3个连续浮点数的向量,这里的缓存很好,但每次访问都会产生额外的可变偏移量.Buti认为这个矢量aproach可以更好地适应像SSE2/3之类的optimitzations.
哪个方法更好,我迷路了,我需要建议:)
谢谢你的时间 :)
LLORENS
我想写使用UTF-8编码的XML文件,以及原始字符串可以有无效字符像"A",所以,我需要这些无效字符更改为有效的.
我知道有一种编码方法可以采用例如字符á并将其转换为字符组á.
我试图用C#来实现这一点,但我没有成功.我正在使用Encoding.UTF8函数,但我只用sema字符结束(即:á)或'?' 字符.
所以,你知道用C#来实现这个角色变化的正确方法吗?
谢谢你的时间和帮助:)
LLORENS