我在Visual Studio 2008表单环境中尝试了以下简单示例:

String^ textn;
textn = this->dateTimePicker1->Value.ToString();
textn = textn.substr(0, 7);

这不能与神秘消息一起编译:
1>        type is 'System::String ^'
1>        did you intend to use '->' instead?

我已经用Google搜索了大约1个小时,以找出失败的原因,但我只是找不到答案。我通常会编写C#代码,但由于工作情况,我不得不降级为C++,并且发现做最简单的事情非常困难。

最佳答案

您的代码中有两个问题:首先是访问托管类的成员。第二个是您访问的成员的名称。

使用托管类型时,您访问的成员与C#中的相同。使用C++的std::string时,可以使用substr。使用System.String时,需要使用Substring,如下所示:

textn = textn->Substring(0, 7);

关于c++ - 时间:2018-12-26标签:Visual Studio 2008,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15787336/

10-09 05:21