[英]C++ Class in IOS App, Xcode 5
我有一个IOS应用程序是一个单一的视图应用程序。 它有一个我在其中制作的标准C ++类,但是,它不接受cpp类。 这是.h文件的简化版本(没有那些行#s):
1 #ifndef __Calculator__Numbers__
2 #define __Calculator__Numbers__
3 #include <iostream>
4 class NumDigits
5 {
6 };
7 #endif
我收到错误: 'iostream' file not found
看起来好像项目没有C ++库? 如果是这样,我将如何添加它们? 如果没有,我该怎么做才能解决这个错误? 看起来我的项目中没有包含cpp库: http : //i.imgur.com/ZkJHb7j.png
实现文件在Obj-C中具有扩展名.m
。 要使用Objective-C在Xcode项目中使用C ++文件,必须使用.mm
扩展名,并且可以在.mm
文件中包含C ++标头。 您不能在.m
文件中包含标头,但如果要在.h
包含C ++标头,则需要一个宏,如:
#ifdef _CP
#include <iostream>
#endif
为了解决这个问题,我只是取出了所有的宏, #include
和类声明:
#ifndef __Calculator__Numbers__
#define __Calculator__Numbers__
#include <iostream>
class NumDigits
{
};
#endif
并且只留下函数声明: void myFunction(int myVariable) ;
然后在.cpp中:
#include <iostream> //and other #includes
void myFunction(int myVariable) {
//stuff
}
这是有效的,因为函数仍然被调用,值传递给它们和从它们传递。 返回值是应该吐出的值。 如果在.mm
如果.cpp
是#included
,则无法找到iostream文件,因此3include the .h
,而在.cpp
, #include
.h
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.