「関数を保存」できるものを見つけようとしました。プログラムを実行すると(一部の関数を含む)、その後関数のアドレスをメモリに保存すると、これらの関数を実行せずに再利用できます。いくつかのアイデアを教えてください(一般的または特にPython、C / C ++など)。私はこれをグーグルで検索しましたが、わかりませんでした:(。ある種のメモリ管理(割り当て、メモリの自由、常駐メモリ...と思います)を考えていました。例:アドレスが「at」の関数があります。 "(プログラムの実行時に生成されます)どうすれば再利用できますか?!よろしくお願いします
質問する
702 次
1 に答える
1
Python では、関数はオブジェクトであるため、エイリアスとして使用した任意のラベルから関数を渡したり、割り当てたり、呼び出すことができます。ID (メモリの場所/GUID に相当) を取得することもできます。あなたが意味するのがデータのメモ化/遅延読み込みである場合、そのようなことを行うためにSOおよびGoogleを通じて利用できるリソースが多数あります。それらは一般的に次のようになります。
class Foo(object):
@staticmethod
def get_val():
try:
return Foo.__val
except AttributeError:
#do run-once logic here, assign to Foo.__val
return Foo.__val
于 2012-04-19T15:01:40.697 に答える