我需要在托管 C++ 项目中使用手写的 getter/setter 定义属性,该类可以从 C# .NET 项目中使用。
关于该主题的codeproject 文章建议使用
__property float Volume;
已过时且现在归类为/crl:oldSyntax
.Open Standard managed extensions to C++ 文章说定义属性,如自动
property float Volume;
生成支持字段,我不想要或不需要。简单地定义像
property float Volume;
compiles这样的属性/clr
,但是尝试添加像float Mixer::Volume::get(){ .. }
throw这样的手写 getter/setterError C2084: function X already has a body
。
那么,在没有支持字段的情况下,以及使用定制的手写 getter/setter 方法来定义只读或读/写属性的正确方法是什么?