有两个项目,一个 C++ CLI 和另一个 C# 项目。
C# 项目中引用了 C++ CLI 程序集。
一切都很好,除了索引属性不起作用。
C++ CLI 代码:
property Nullable< int> PVarInt[System::String^] {
Nullable<int> get(System::String^ inx){
}
void set(System::String^ inx, Nullable< int> newx){
}
}
C# 中的代码显示为两个 set 和 get 方法,如下所示:
get_PVarInt(..)
set_PVarInt(..)
这是一个错误吗?有没有办法解决这个问题?为什么会发生这种情况?
最佳答案
C# 不支持索引属性,this
属性除外。
但是 .NET 框架确实如此,因此当使用支持它的语言创建索引属性时,它将在 C# 中显示为一个 get_Method
和一个 set_Method
。
关于c# - 为什么 C++ CLI 索引属性在 C# 中不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15358631/