【发布时间】:2013-03-05 20:17:48
【问题描述】:
我正在考虑将一些代码从 C++ 转换为 Objective C,我遇到了一个实例,该实例包含一个末尾带有 const 表示法的函数。我对 C++ 很生疏,我不记得这代表什么(虽然我一直在谷歌搜索)。我想知道如何将它强制到Objective-C。目前,这就是我所拥有的:
C++ 代码:
float RenderingEngine1::RotationDirection() const
{
float delta = m_desiredAngle - m_currentAngle;
if (delta == 0)
return 0;
bool counterclockwise = ((delta > 0 && delta <= 180) || (delta < -180));
return counterclockwise ? +1 : -1;
}
目标-C:
-(float)getRotationDirection{
float delta = desiredAngle - currentAngle;
if (delta == 0) {
return 0;
}
bool counterclockwise = ((delta > 0 && delta <= 180) || (delta < -180));
float test = counterclockwise ? +1 : -1;
NSLog(@"%f",test );
return counterclockwise ? +1 : -1; //problem
}
编辑:发现我的方式错误,这只是程序中其他地方的一个附加问题('我喜欢简单的')。话虽如此,我确实想确保 const 声明不会干扰任何进一步的问题,并想检查以确保是否应该有任何声明我需要进行(例如单例方法等)。谢谢各位大神解答!
【问题讨论】:
-
见here
-
只是一个评论...你知道你可以使用 Objective-C++ 来制作一个连接器吗?所以你可以直接编译你的 c++ 代码而不需要翻译它
-
有什么问题?请发布错误,您的 Objective-C 版本适用于我。最后的 const 确保您不会在此方法中修改类的任何成员。
-
问题是我在 C 和 C++ 端返回不同的变量,并希望确保 const 声明不会导致差异。这是一个相当轻微的头痛。
标签: c++ objective-c xcode constants translation