我试图用python实例化一个用C ++编写的类。出于某种原因,我在调用" print"时遇到语法错误。方法,它不带参数,只应打印一个int:
IronPython 2.7.5b2 (2.7.5.0) on .NET 4.0.30319.18444 (32-bit)
Type "help", "copyright", "credits" or "license" for more information.
>>> import clr
>>> clr.AddReferenceToFileAndPath('c:\\users\\pletzer\\documents\\visual studio
>>> \\Projects\\AlexTest\\Debug\\AlexTest.dll')
>>> import at
>>> a = at.AlexTest(2)
>>> a.print()
File "<stdin>", line 1
a.print()
^
SyntaxError:语法错误
提前感谢任何建议。 C ++类是
// AlexTest.h
#include <iostream>
#pragma once
using namespace System;
namespace at {
public ref class AlexTest
{
public:
AlexTest(int i) {
mi = i;
}
void print() {
std::cout << "mi = i\n";
}
private:
int mi;
};
}
答案 0 :(得分:1)
将方法名称从“打印”更改为“显示”可解决此问题。
另外,可以使用(原始字符串r'...')
clr.AddReferenceToFileAndPath(r'c:\ users \ pletzer \ documents \ visual studio \ Projects \ AlexTest \ Debug \ AlexTest.dll')
避免输入双反斜杠