【发布时间】:2016-08-22 10:56:19
【问题描述】:
我在 Cython 中尝试引用时遇到了一些麻烦。 我正在使用此代码创建一个 int 并对其进行引用。
cdef int i = 10;
cdef int& integer_ref = i;
但是,我不知道如何通过 integer_ref 更改 i 的值。在 C 语言中,我只使用integer_ref = some_other_value,这会将i 的值设置为some_other_value。
但是,在 cython 中执行此操作会返回错误,因为不允许分配给引用。
我也尝试了integer_ref[0] = some_other_value,但它试图索引一个不允许的int &。我应该使用什么?
我发现this post on the cython-users list 似乎暗示这是一个已知的错误,但我不太确定。使用(&integer_ref)[0] = some_other_value 链接中的解决方法也对我不起作用。
谢谢!
【问题讨论】:
-
请注意,链接中提出的解决方法不是
integer_ref[0] = other_value,而是(&integer_ref)[0] = other_value。 -
对不起,我并不是要暗示我使用
integer_ref[0] = other_value作为链接中的解决方法。链接中的解决方法也对我不起作用,引发了长时间的编译错误。谢谢你看,我忘了说。
标签: python c++ reference cython