C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[2]: C++/CLIでC#のf(ref p)を記述する方法


(過去ログ 11 を表示中)

[トピック内 3 記事 (1 - 3 表示)]  << 0 >>

■2473 / inTopicNo.1)  C++/CLIでC#のf(ref p)を記述する方法
  
□投稿者/ 天美 (1回)-(2007/04/09(Mon) 18:56:52)

分類:[C++/CLI] 

.Net2005 C++で実装したクラスをC#側から使おうとしていますが、
C#側でc.f(ref String p)に相当する宣言をC++側で書けずにいます。

2003ではString **pでつながったのですが、
String^ *pではC#側でref pと*pでは変換できないというエラーとなります。
String^ &pはString^ *pと同じエラー。
意味的にはString^^ pかとも考えたのですが、C++がコンパイルエラーとなります。
[ref] String pも試しましたが、コンパイルエラーとなります。

どう記述すればよいのでしょうか。

引用返信 編集キー/
■2475 / inTopicNo.2)  Re[1]: C++/CLIでC#のf(ref p)を記述する方法
□投稿者/ かずき (1回)-(2007/04/09(Mon) 19:16:15)
%を書けばいいみたいです。

void func(String^% str) // これの%
{
    str = L"func";
}

int main(array<System::String ^> ^args)
{
    String^ str = "Hello";
    Console::WriteLine(str);
    func(str);
    Console::WriteLine(str);
    return 0;
}
これで実行すると
Hello
func
ってなります。

引用返信 編集キー/
■2476 / inTopicNo.3)  Re[2]: C++/CLIでC#のf(ref p)を記述する方法
□投稿者/ 天美 (2回)-(2007/04/09(Mon) 19:23:06)
おかげさまで、うまくいきました。
ありがとうございました。

解決済み
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -