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

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

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

Re[2]: cliext/vectorを参照渡しするには?


(過去ログ 95 を表示中)

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

■56937 / inTopicNo.1)  cliext/vectorを参照渡しするには?
  
□投稿者/ nom (1回)-(2011/02/05(Sat) 20:48:18)

分類:[C++/CLI] 

開発環境・使用言語:VC++2008 CLR 

Form1.hでvectorを作りform2.hに参照渡しをして使用したいのですが
form2の受け取り void SetData(vector<int>% a_v) で警告がでてしまいます

warning C4677: 'SetData': 公開されたメンバのシグネチャはアセンブリ プライベート型 'cliext::vector<_Value_t>' を含んでいます。
http://msdn.microsoft.com/ja-jp/library/0wb44ssy(VS.90).aspx
'cliext::vector<_Value_t>'はpublicではないので含んではいけない警告?

引数の仕方が悪くて警告が出ていると思うのですが
どういう書き方をすれば警告を回避できるのかわかりません
ご指南お願いします

//Form1.h
#pragma once

#include "form2.h"

namespace vector_form {

	using namespace System;
	using namespace System::ComponentModel;
	using namespace System::Collections;
	using namespace System::Windows::Forms;
	using namespace System::Data;
	using namespace System::Drawing;

	public ref class Form1 : public System::Windows::Forms::Form
	{
	public:
		Form1(void)
		{
			InitializeComponent();
			vector<int>^ v = gcnew vector<int>();
			vector<int>% a_v = *v;

			for (int i = 0; i < 10; i++)
			{
				v->push_back(i);
			}

			form2^ f2 = gcnew form2();
			f2->SetData(a_v);
			f2->Show();
		}

	protected:(略)


//form2.h
#pragma once

#include <cliext/vector>

using namespace System;
using namespace System::ComponentModel;
using namespace System::Collections;
using namespace System::Windows::Forms;
using namespace System::Data;
using namespace System::Drawing;
using namespace cliext;

namespace vector_form {

	public ref class form2 : public System::Windows::Forms::Form
	{
	public:
		form2(void)
		{
			InitializeComponent();
		}

		void SetData(vector<int>% a_v)
		{
			for each(int item in a_v)
			 {
				textBox1->AppendText(item + "\r\n");
			 }
		}

	protected:(以下略)

引用返信 編集キー/
■56938 / inTopicNo.2)  Re[1]: cliext/vectorを参照渡しするには?
□投稿者/ επιστημη (2599回)-(2011/02/05(Sat) 22:36:42)
επιστημη さんの Web サイト
> 引数の仕方が悪くて警告が出ていると思うのですが
> どういう書き方をすれば警告を回避できるのかわかりません
> ご指南お願いします

http://www.atmarkit.co.jp/fdotnet/special/vcppinvista03/vcppinvista03_02.html

引用返信 編集キー/
■56939 / inTopicNo.3)  Re[2]: cliext/vectorを参照渡しするには?
□投稿者/ nom (2回)-(2011/02/05(Sat) 23:11:01)
ありがとうございます
紹介のurlで勉強し直してきます
解決済み
引用返信 編集キー/


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

このトピックに書きこむ

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

管理者用

- Child Tree -