您的代码的所有三个版本都可以编译和运行,因此这看起来就像是一个Intellisense错误。我可以在任何具有重载索引器的类中重现它,其setter可以采用Int32或String ^ index参数。我发现Intellisense在C ++ / CLI中非常不稳定,所以这可能是你会发现的许多瑕疵中的第一个。
考虑将问题报告给 https://connect.microsoft.com/