アプリ版:「スタンプのみでお礼する」機能のリリースについて

Typeで構造体をいくつか宣言して、それをクリアする関数
を作ろうとしています。どんな構造体がきてもOKなように
作りたいんですが、???の部分にどうかけばいいかが
わかりません。こういうのって無理なんでしょうか?

Sub Test(ByVal 構造体 As ???)

'構造体のクリア
Call ZeroMemory(構造体, Len(構造体))

End Function

ある構造体のみと考えればわかるんですが、どれでもOKと
なるとわかりません・・・同じようなことでもいいので、
何かいい方法はないでしょうか?よろしくお願いします。

A 回答 (3件)

このAPIを使うのが楽でしょう



Declare Sub ZeroMemory Lib "KERNEL32" Alias "RtlMoveMemory" (dest As Any, ByVal numBytes As Long)
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
このAPIに飛ばす関数を作ろうとしています。
クリアするときに、このAPIを使えばいいだけなんですけど・・。
もう少しやってみます。ありがとうございました。

お礼日時:2002/05/31 13:05

ユーザー定義型をPublicクラスで定義した場合は、関数側で ByRef ~ As Variantで


受け取ればいいらしい。(某MLの情報)

>構造体のクリア
>Call ZeroMemory(構造体, Len(構造体))

構造体が可変長文字列や動的配列を含んでいると拙いと思うが..
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
いろんな構造体となるとまずいようですね・・。
参考にさせて頂きます!ありがとうございました。

お礼日時:2002/05/31 13:08

Objectで試してみましたか?


実際にテストしていないので旨くいくか分かりませんが。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
???のところをObjectってことですよね?
構造体を渡すと型が一致しませんとなります。

お礼日時:2002/05/31 12:59

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!