DOBON.NETプログラミング掲示板過去ログ
クラスポインタ
題名: クラスポインタ
著者: ほりい
日時: 2006/07/28 0:55:30
ID: 16870
この記事の返信元:
(なし)
この記事への返信:
[16871]
Re[1]: クラスポインタ
Hongliang
2006/07/28 1:10:30
ツリーを表示
環境/言語:[C#]
分類:[.NET]
こんにちは、ほりいと申します。
今回質問させていただくのは、クラスポインタについてです。
現在のソースをおおまかに示すと以下の通りです。
unsafe public class a
{
b c = new b();
c.x = 10;
c.y = 20;
fixed(b *p = &c)
{
〜処理〜
}
}
public class b
{
int x, y;
}
しかし、コンパイルすると次のようなエラーが出てしまいます。
『マネージ型 ('Unlimited_War.Calculate') の変数のアドレスまたはサイズを取得できません。』
どのようにすればよろしいですか、教えてください。
題名: Re[1]: クラスポインタ
著者: Hongliang
URL:
http://hongliang.seesaa.net/
日時: 2006/07/28 1:10:30
ID: 16871
この記事の返信元:
[16870]
クラスポインタ
ほりい
2006/07/28 0:55:30
この記事への返信:
[16873]
Re[2]: クラスポインタ
ほりい
2006/07/28 9:11:34
[解決]
ツリーを表示
2006/07/28(Fri) 01:11:41 編集(投稿者)
無理です。
C# の unsafe 構文内で参照型のポインタをとる事はできません。
値型(struct)なら(一部制限付きですが)とれます。
題名: Re[2]: クラスポインタ
著者: ほりい
日時: 2006/07/28 9:11:34
ID: 16873
この記事の返信元:
[16871]
Re[1]: クラスポインタ
Hongliang
2006/07/28 1:10:30
この記事への返信:
(なし)
ツリーを表示
そうですか、これはできないことだったのですね。
わかりました。
Hongliangさん、ありがとうございました。
解決済み!
DOBON.NET
|
プログラミング道
|
プログラミング掲示板
分類:[.NET]
こんにちは、ほりいと申します。
今回質問させていただくのは、クラスポインタについてです。
現在のソースをおおまかに示すと以下の通りです。
unsafe public class a
{
b c = new b();
c.x = 10;
c.y = 20;
fixed(b *p = &c)
{
〜処理〜
}
}
public class b
{
int x, y;
}
しかし、コンパイルすると次のようなエラーが出てしまいます。
『マネージ型 ('Unlimited_War.Calculate') の変数のアドレスまたはサイズを取得できません。』
どのようにすればよろしいですか、教えてください。