String型の参照渡し – プログラミング – Home

通知
すべてクリア

[解決済] String型の参照渡し


yama
 yama
(@yama)
ゲスト
結合: 19年前
投稿: 9
Topic starter  

VC++2003.NETを使用しております。
以下のような場合に引数に値が返ってきません。

<呼び出し元の関数>
 String* str = __gc new String(");
 errCode = func(str);  //引数のstrにfunc()で値を入れて返してもらいたい。
 Debug::WriteLine(str); //空のStringとなってしまう。funcで入れたつもり
のsssssを表示したい。

<Stringを設定する関数>
Int32 aaa::func( String* str )
{
 str = Ssssss;
 return errCode;
}

初歩的な間違いなのだろうと思うのですが、よくわかっておりません。
よろしくお願いいたします。


引用未解決
トピックタグ
Blue
 Blue
(@Blue)
ゲスト
結合: 20年前
投稿: 1467
 

C++マネージでのStringの受け渡し
http://www.microsoft.com/japan/msdn/community/gdn/ShowPost-8063.htm

ちなみにC++/CLI(VS2005)では % で参照渡しとなります。


返信引用
yama
 yama
(@yama)
ゲスト
結合: 19年前
投稿: 9
Topic starter  

すばやいご回答ありがとうございます。
以下でうまくいきました。

<呼び出し元の関数>
 String* a = __gc new String(");
 errCode = func(&a); //&にする。
 Debug::WriteLine(a);

<Stringを設定する関数>
Int32aaa::func( String** str ) //**にする。
{
 *str = Ssssss; //*strに対して値を設定
}

ありがとうございました。


返信引用

返信する

投稿者名

投稿者メールアドレス

タイトル *

プレビュー 0リビジョン 保存しました
共有:
タイトルとURLをコピーしました