Я не могу заставить SWIG для применения основной типной карты при составлении составления списка Python с указанием на мC++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Я не могу заставить SWIG для применения основной типной карты при составлении составления списка Python с указанием на м

Сообщение Anonymous »

Я пытаюсь создать интерфейс Python для более крупного проекта, но, поскольку я продолжал сталкиваться с этой проблемой, я решил сделать RTFM и подать минимальный пример. Оказывается, я сталкиваюсь с одной и той же проблемой как в Windows, так и на Linux, так что я, очевидно, здесь не понимаю. Это файлы: < /p>

Код: Выделить всё

// example.c

#include 
#include "example.h"

double rms(double* seq, int n) {
double sum = 0.0;
for (int i = 0; i < n; i++) {
sum += seq[i] * seq[i];
}
return sqrt(sum / n);
}
< /code>
// example.h

#ifndef EXAMPLE_H
#define EXAMPLE_H

double rms(double* seq, int n);

#endif
< /code>
// example.i

%module example

%include "typemaps.i"

%{
#include "example.h"
%}

%apply (double *IN_ARRAY1, int DIM1) { (double *seq, int n) };

%include "example.h"
Запуск swig -python example.i последовательно дает мне

Код: Выделить всё

Warning 453: Can't apply (double *IN_ARRAY1,int DIM1). No typemaps are defined.
< /code>
Примеры, которые выполняют работу, являются простыми примерами с веб-сайта SWIG без TypeMaps: < /p>
int fact(int n);

int my_mod(int x, int y);

char *get_time();
Структы также хорошо работают в моем более крупном проекте.
Я подтвердил, что Typemaps.i доступен для SWIG (введя типовую опечатку, такую как 'trmpaps.i' ) и наблюдение за тем, что он жалуется. больше путаницы с этим вопросом.

Подробнее здесь: https://stackoverflow.com/questions/797 ... to-a-point
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»