Re: Objective-C++
Re: Objective-C++
- Subject: Re: Objective-C++
- From: Philip Bridson <email@hidden>
- Date: Fri, 8 Feb 2008 23:25:25 +0000
OK then, I am now none the wiser because that is what I have been
doing all along.
To be more precise I declare a class as follows:
This is my header file...
MyClass.h
#include <iostream> //Here is where I get the error.
class MyClass
{
//Variables etc...
};
This is my implementation...
MyClass.mm
//Code...
I get the error in the header file. It says it cannot find iostream.
From what everyone has been saying it sounds like I am doing it
right so why do I get an error?
Phil.
On 8 Feb 2008, at 23:20, John Stiles wrote:
No.
Headers stay headers.
The code files that include the headers need to be .cpps or .mms.
Philip Bridson wrote:
OK thats cool. My #include <iostream> is in a .h file. Just to
clarify do I need to make the .h file a .mm?
Thanks.
On 8 Feb 2008, at 23:06, John Stiles wrote:
Any file that #includes <iostream>, either directly or indirectly
via another header, needs to be a .cpp or .mm in order to
work. .c or .m will not work.
Philip Bridson wrote:
Thanks both to Dave and John,
I am using .mm for my implementation files but it is in the .h
files i am having problems. Do I need to put the entire class,
including deceleration in an .mm file?
Thanks guys.
Phil
On Feb 8, 2008, at 2:51 PM, Philip Bridson wrote:
I am trying to write using Objective-C++. I have read the docs
and understand what I can and can't do with it but I have a
really basic problem. When I put #include <iostream> in my
header files I get an error saying that the file cannot be
found? Why is this?
Most likely because the compiler doesn't think that it's
compiling an objective-c++ file, which means that it isn't using
the C++ header search paths. What extension are you using for
your filename? You have to use .mm to tell the compiler that
it's objective-c++.
Also when creating the file, do I create a C++ file or an Obj-C
file or doesn't it matter?
It should be a .mm file.
Finally, I want to do some thing like this
#ifdef _MAC_OS_X
//do some obj-c code
#endif
#ifdef _WIN32
//use WIN32 API coding
#endif
#ifdef __OBJC__
//objc only stuff
#endif
_______________________________________________
Cocoa-dev mailing list (email@hidden)
Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden