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

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

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

Re[3]: CountableObjectって何処に定義されていますか?


(過去ログ 44 を表示中)

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

■23658 / inTopicNo.1)  CountableObjectって何処に定義されていますか?
  
□投稿者/ ネタ好き未記入 (39回)-(2008/08/20(Wed) 09:14:18)

分類:[.NET 全般] 

早速Boostで躓いてしまいましたorz

引用元:http://www.kmonos.net/alang/boost/classes/intrusive_ptr.html

#include <vector>
#include <iostream>
#include <boost/intrusive_ptr.hpp>
using namespace std;
using namespace boost::intrusive_ptr;

class SharedObject
{
public:
	SharedObject() : ref_count(1) {}
	int AddRef()  { return ++ref_count; }
	int Release() {
		if( 0 == --ref_count ) delete this;
		return ref_count;
	}
	void Hello()
	{
		cout << "hello." << endl;
	}
private:
	int ref_count;
};

void intrusive_ptr_add_ref( CountableObject* ptr )
{
	ptr->AddRef();
}

void intrusive_ptr_release( CountedObject* ptr )
{
	ptr->Release();
}

int main()
{
	typedef boost::intrusive_ptr<SharedObject> Ptr;

	Ptr p = Ptr(new SharedObject,false);
	vector< Ptr > v;
	  // vectorに入れたり。

	v.push_back( Ptr(new SharedObject,false) );
	v.push_back( Ptr(new SharedObject,false) );
	v.push_back( Ptr(new SharedObject,false) );
	v.push_back( p );

	p->Hello();
	  // pはさっき他にコピーしたけれど、まだここからも参照可能。

	return 0;
} // ここで全てdeleteされる。

上記のサンプルコードをコンパイルしようとすると・・・
	
error C2065: 'CountedObject' : 定義されていない識別子です。

とエラーが出てしまいます。

このCountedObjectなるものを探しましたがどうしても判りませんでした。
Boostに詳しいしい人、お手数ですがこの型について教えて下さい。
よろしくお願い足します。

引用返信 編集キー/
■23661 / inTopicNo.2)  Re[1]: CountableObjectって何処に定義されていますか?
□投稿者/ επιστημη (1260回)-(2008/08/20(Wed) 09:37:06)
επιστημη さんの Web サイト
> 上記のサンプルコードをコンパイルしようとすると・・・
> error C2065: 'CountedObject' : 定義されていない識別子です。
> とエラーが出てしまいます。
> このCountedObjectなるものを探しましたがどうしても判りませんでした。

SharedObjectのマチガイぢゃねぇかしら。

引用返信 編集キー/
■23663 / inTopicNo.3)  Re[2]: CountableObjectって何処に定義されていますか?
□投稿者/ もょもと (31回)-(2008/08/20(Wed) 09:53:16)
> void intrusive_ptr_release( CountedObject* ptr )
> {
> ptr->Release();
> }

引用元ではここはCountedObjectではなく、CountableObjectになっていますよ?

引用返信 編集キー/
■23664 / inTopicNo.4)  Re[3]: CountableObjectって何処に定義されていますか?
□投稿者/ ネタ好き未記入 (40回)-(2008/08/20(Wed) 10:00:23)
επιστημηさんへ返信
>SharedObjectのマチガイぢゃねぇかしら。

!!!!成程、そうだと思います。
早速SharedObjectに変えたらコンパイルできました。
辻褄があうし間違いないと思います。



もょもと さん に返信
> 引用元ではここはCountedObjectではなく、CountableObjectになっていますよ?

済みません。間違えました。



SharedObjectで間違いないと思いますので解決済みとします。
有難うございました。
解決済み
引用返信 編集キー/


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

このトピックに書きこむ

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

管理者用

- Child Tree -