cli问题,指针的指针,顺带散分了
cli::interior_ptr <System::Char> ptr;
methodA(ptr);
void methodA(cli::interior_ptr <System::Char> parameter)
{
++parameter;
}
由于传值的缘故
methodA方法递增parameter以后ptr是不会有变化的
我想把参数改为指针的指针
请教一下该怎么写
------解决方案--------------------幫頂﹗
------解决方案--------------------用引用试试
void methodA(cli::interior_ptr <System::Char> ¶meter)
{
++parameter;
}
------解决方案--------------------为什么一定要在C#里用指针呢?不能换个思路吗,要不就去用c++?
------解决方案--------------------cli::interior_ptr <System::Char> ptr;
methodA(&ptr);
void methodA(cli::interior_ptr <System::Char> **parameter)
{
++parameter;
}
对VC++.net 2005不熟,可以试试!
------解决方案--------------------使用unsafe模式
------解决方案--------------------关注...
学习...
------解决方案--------------------学习~~
------解决方案--------------------谢谢接分
------解决方案--------------------继续关注
------解决方案--------------------不懂,帮顶吧
------解决方案--------------------jf
------解决方案--------------------帮顶
------解决方案--------------------关注,学习,顶
------解决方案--------------------关注
------解决方案--------------------关注,学习,顶,希望快些解决.
------解决方案--------------------
------解决方案--------------------LZ太强了吧!一个字,接
------解决方案--------------------System::Char 不是引用
直接
void methodA( System::Char& c )
{
c++;
}
System::Char p = 'a ';
methodA( p);
return 0;
------解决方案--------------------cli 的字符串和c++原生字符串不能一一对应
c++ 的字符串是指向一个字符数组的,cli 字符串是一个类,
不能直接使用c++原来的方式
------解决方案--------------------你是什么string?
System::String
or
std::string
???
如果是前者可以用
Marshal::StringToStringToHGlobalAuto(string s);
转为c++原生字符串
再按c++标准方式处理
------解决方案--------------------过年啦,接点分长进长进