Цель C, C ++, включая два файла с одинаковым именем класса - PullRequest
1 голос
/ 05 января 2011

У меня есть класс Objective C под названием Donald, у меня также есть класс C ++ с именем Donald в статической библиотеке, который я хотел бы использовать в том же проекте.У них обоих есть заголовочный файл с именем Donald.h.Есть ли способ сделать это?

1 Ответ

1 голос
/ 05 января 2011

Вы можете включить оба заголовочных файла, указав немного больше пути, например,

#import "staticlibraryheaders/Donald.h"
#import "Donald.h"

Однако вы можете обнаружить, что код не будет компилироваться, поскольку вы объявляете два типа, оба называются Donald.Если компилятор видит:

Donald* duck;

Как он знает, что нужно вводить duck в качестве указателя на экземпляр класса C ++ или класса Objective-C?Вы можете исправить это, если класс C ++ находится в пространстве имен C ++.Тем не менее, это выходит за рамки моих знаний C ++.

...