全2241件中121~140件表示
  • vectorをpublicで扱いたい

    Visual C++2013を使用しています。 現在、vectorを下記の位置に定義しています。 public ref class MainForm : public System::Windows::Forms::Form { MainForm(void) { 略1 } 略2 private: void 関数1(引数1) { vector<vector<double>> array_csv(要素数1, vector<double>(要素数2)); } } このvectorを他のクラスと共用して扱いたいのですが、 どう定義したらいいか分かりません。 やってみたこと 略1や略2のところへ以下のように定義してみましたが、関数1内からvectorへアクセスすると、 型が違うため、アクセスできません。 vector<vector<double>> array_csv(int, vector<double>()); 定義する場所か定義の方法がおかしいのでしょうか? ご教授願います。

  • vc++子ウィンドウにおけるTimer動作について

    visualc++2008について。 Form2^ form12 = gcnew Form2(); form12->Show(); の記述で子ウィンドウを表示させるところまでできたのですが、その子ウィンドウでキッチンタイマーの動作をさせようと考えています。がTimer_tickが動作しません。 ShowではなくRunじゃないかとかいろいろ考えてやってみたのですが、ことごとくエラーでした。 Timerの動作部分TickにはTimer_tickを紐付けしてあります。 Timer動作もTureで、記述コードもとりあえず this->label1->Text = DateTime::Now.ToString("HH:mm:ss"); でまず、動作しているかの確認を行っています。 わかる方ご教授お願いします。

  • VC2013のSTLでlength_error

     VC2010で作っていたあるプロジェクトがあるのですが、それをVC2013に移植しました。そのプロジェクトではstd::dequeを使っているのですが、deque::push_backするときにstd::length_errorという例外を投げるようになってしまいました。サイズが0のコンテナにpush_backした時点で例外が投げられます。  deque<T>のTには、そこそこメンバ変数が多めのクラスが指定され、push_backされる前にビットマップ用の領域がクラスのインスタンスで確保されてからpush_backされます。  コンテナのデフォルトアロケーターが確保するサイズに比べてクラスのサイズが合わないのかなと検討をつけているところなのですが、よくわかっておりません。  心当たりのある方にご教授いただければ幸いです。

  • 【C++】boost threadについて

    現在visual studio 2010 を使ってC++による開発を行っています。 使用しているライブラリのソースコードを読んでいたら下記のような行を見つけたのですが、 どういった内容なのか検討が付かず、困っています。 ↓部分的で申し訳ないのですが、下記のような関数が使用されていました。   "boost::thread::yield ();"の使用例とかが解れば何がしたいのか解るのではと思っています。 --------------------------------------------------------------------------------- CloudViewer_impl (const std::string& window_name) : window_name_ (window_name), has_cloud_ (false), quit_ (false) { viewer_thread_ = boost::thread (boost::ref (*this)); while (!viewer_) { boost::thread::yield (); } } --------------------------------------------------------------------------------- 参考になるかと思い、std::this_threadのyield関数を調べると下記のように説明されていました。 [yield 関数]   現在のスレッドが通常実行を継続がオペレーティング システムに他のスレッドを実行するように通知します。 boost::thread配下の関数ということで、threadの操作をするモノだということは解るのですが、 これまで、あまりthreadを触って来なかったこともあり、見当がつきません。 不躾な質問で申し訳ありませんが、簡単なサンプルでyieldの使い方、使い処など教えて頂ければ有難いです。

  • example7.cの保存先を教えてください。

     example7.cの保存デレクトリが分かりません!?  保存先はデレクトリが決まっていると思います。  以下の質問の”この回答への補足”でソフト名が分かると思います。 http://okwave.jp/qa/q8650877.html example7.cを保存しようとしたら  保存先を聞いてきます。 どこに保存すれば!いいのでしょうか!  宜しくお願いします。 

  • プログラミングCの質問です

    現在10×10の市松模様を表示させるというプログラムを作成しています。 #define文、IF文、for文の使用、printfを使って■と□を表示させることが条件です。 間違っているところの指摘をお願いします。 #include <stdio.h> #define N 10 int main(void) { for( i=1 ; i<=N ; ++i ) { for( j=1 ; j<=N ; ++j ) } if( (i+j) % 2 ){ printf("■"); }else printf("□"); } printf("\n"); i++; } return 0; }

  • 【C++】アドレス演算子について質問です。

    アドレス演算子について質問です。 下記のように"&"を関数名の前に付けた場合下記のように出力されます。 &グローバルメソッド:002E1226 &クラス::メンバメソッド:1 1行目はグローバルメソッドなので実態が存在するのでメソッドのアドレスが表示されている。 2行目は実態が存在しないと思うのですが、あってますでしょうか? また、何故1が表示されてしまうのでしょうか? -------------------------------------------------------- #include "stdafx.h" #include <iostream> using namespace std; class Class1{ public: void f(){ return; } }; void Func1(){ return; } int main() { cout << "&グローバルメソッド:" << &Func1 <<endl; cout << "&クラス::メンバメソッド:"<< &Class1::f <<endl; getchar(); return 0; }

  • 【C++】関数ポインタの使い方

    関数ポインタの使い方で悩んでいます。 下記の (1)のようにグローバルメソッドとして定義したメソッドを関数ポインタに代入することは出来るのですが、 (2)のようにクラスのメンバメソッドとして定義したメソッドは関数ポインタに代入することは出来ませんでした。 Error:バインドされた関数へのポインターは関数の呼び出しにのみ使用できます。 というエラーが発生します。 関数ポインタに外部参照でメソッドを代入することは出来ないのでしょうか? -----(1)------------------------------------------------------------------ #include "stdafx.h" #include <iostream> using namespace std; int f(int a, int b){ return a * b; } int _tmain(int argc, _TCHAR* argv[]) { typedef int (* FUNC_POINTER)(int, int); FUNC_POINTER fp; fp = f; cout << fp(1,2) <<endl; getchar(); return 0; } ------------------------------------------------------------------------- -----(2)------------------------------------------------------------------ #include "stdafx.h" #include <iostream> using namespace std; class MPointerList{ public: int f(int a, int b){ return a * b; } }; int _tmain(int argc, _TCHAR* argv[]) { typedef int (* FUNC_POINTER)(int, int); FUNC_POINTER fp; //fp = f; MPointerList mP; fp = mP.f; cout << fp(1,2) <<endl; getchar(); return 0; } -------------------------------------------------------------------------

  • 動的なメモリ確保の仕方

    ユーザーが入力した任意個数のデータを受け取り、 それらの平均、標準偏差などを求めるプログラムを 書いてみようとしています。 この「任意個数」については、メモリを確保できる限りの 限界個数まで入力可能にしたいと考えています。 今時のメモリー容量なPCでそんな個数のデータを 入力することがあるかどうかはとりあえずおいておきます。 これまで、方法として以下2つを検討しました。 ■あらかじめ限界サイズの配列を用意する。  ※int型配列なら、int matrix[0x7FFFFFFF/sizeof(int)]など。 ■「n個目の入力値用変数」と、   「n+1個目の入力値用変数のアドレスを格納するポインター」の  構造体を用意して、入力個数が一つ増えるたびにmalloc()でデータ領域を確保していく。 ただ、前者は必要ない時でも大容量のメモリを食う巨大な無駄がありますし、 後者は、次データの位置を示すポインタ情報の付加分だけメモリ使用効率がおちます。 そのため、どちらもいまいちな気がしています。 世の中には、こんな方法よりずっと効率的なデータの確保方法があるに違いないと 思っているのですが、なかなかそれという情報にネットで出会えていない状態です。 何か良い方法をご存じの方、ご教授願えないでしょうか?

  • プログラミング 配列 合計

    配列の要素に値を読み込んで表示させるプログラムは 1#include <stdio.h> 2 3int main(void) 4{ 5 6 int i; 7 int vc[5]; 8 9 for (i = 0; i < 5; i++) 10 vc[i] =i + 1; 11 12 for(i = 0; i < 5; i++) 13 printf("vc[%d] = %d\n", i, vc[i]); 14 15 return (0); }でこれを書きなおして配列の値を合計するプログラムはどういうプログラムになるか教えていただけませんか?

  • [C#]連想配列の中に配列を入れたい

    いつもありがとうございます。 value["A"]["0"] = "a0"; value["A"]["1"] = "a1"; value["A"]["2"] = "a2"; value["B"]["0"] = "b0"; value["B"]["1"] = "b1"; .... みたいなのを作りたいと考えているのですが以下のようにやっても、できませんでした。 何が悪いのかがわかりません。 Dictionary<string, Dictionary<string, string>> value = new Dictionary<string, Dictionary<string, string>>(); value["A"]["0"] = "a0"; ← value["A"]["1"] = "a1"; value["A"]["2"] = "a2"; value["B"]["0"] = "b0"; value["B"]["1"] = "b1"; ... 実行すると、←のところで、 「指定されたキーはディレクトリ内に存在しませんでした。」 とエラーが出てしまいます。 上記のような配列を作りたい時はどのように書けばいいのでしょうか? よろしくお願いします。

  • C言語 ファイル出力について

    Excelでも使えるようにCSV形式に書き込みをしたいのですがどのようにすればよいのでしょうか #include <stdio.h> #define N 50 int main(void) { int i, a, n[N], min, temp; for(i=0; i<N; i++) { printf("%2d番目の値:", i+1); scanf("%d",&n[i]); } for(i=0; i<N; i++) { min = i; for(a = i + 1; a < N; a++) { if(n[min] > n[a]) min = a; } temp = n[min]; n[min] = n[i]; n[i] = temp; } printf("小さい順:\n"); for(a=0; a<N; a++){ printf("%2d番目\t%d\n", a+1, n[a]); } return 0; }

  • 古いDOS用のMASMが欲しいのですが

    9801シリーズの実機で遊んでいます。 MS-DOS5.0Aで動くMASM Ver4ぐらいが欲しいのですが今は もう入手困難でしょうか。 ベクターで調べてASMというMASM互換プログラムは手に入れたのですが なんとなく正規のMASMが欲しいのですが。

  • CSting を TCHAR [] に変換したい。

    Visual Sutdio 2010 , VC++ , MFC でファイルリスト一覧作成ソフトを作っている者です。 CSting 型の _T("~\0~\0\0") を TCHAR [] に変換したいです。 CSting 型の変数名は、DeleteFilePathです。 '\0' を他の文字に置換して確認した所、正しく入っています。 現在は、4096文字の文字列配列に入れています。 ゴミ箱に移動できる時とできない時があります。 _______________________________________________________________________________ ■現在のコード  index = -1;  while ((index = CFileListCreatorDlg::m_xcList.GetNextItem  (index, LVNI_ALL | LVNI_SELECTED)) != -1)  {   CString FullPathString = CFileListCreatorDlg::m_xcList.GetItemText(index,2);   if (FullPathString.Right(1) != _T("\\")){     ::SetFocus(::GetDlgItem(m_hWnd,IDC_LIST));    FullPathString.Replace(_T ("\\"),_T("\\\\"));    DeleteFilePath = DeleteFilePath + FullPathString + _T('\0');    CFileListCreatorDlg::m_xcList.DeleteItem(index);   }   index--;  }  DeleteFilePath = DeleteFilePath + _T('\0');  _TCHAR cszPath[4096];   // TCHAR型  _tcscpy(cszPath, DeleteFilePath);  // CString型→TCHAR型  SHFILEOPSTRUCT sfs;  memset ( &sfs, 0, sizeof ( SHFILEOPSTRUCT ) );  sfs.fFlags = FOF_NOERRORUI | FOF_SIMPLEPROGRESS | FOF_ALLOWUNDO;// ゴミ箱へ移動の確認をする場合 FOF_ALLOWUNDO をつける;  sfs.wFunc = FO_DELETE;  sfs.pFrom = cszPath;  if ( 0 != SHFileOperation ( &sfs ) )  {   MessageBox(_T("ゴミ箱に移動できませんでした"),_T("SHFileOperation 失敗"),MB_OK);   return 0;  } _________________________________________________________________________________________________________________________________________________ 5回に1回成功するので、不思議です。 ファイルのパスは、リストコントロールのアイテムに格納されていて、 削除したいアイテムを選択肢、Shift + Delete で、ゴミ箱に削除する ユーザー関数が呼び出されます。(ゴミ箱に移動するだけで、確認メッセージは出なくていいです。) 今まで、具体的した事を記すと以下のようになります。 cszPath = const_cast<LPTSTR>(static_cast<LPCTSTR>DeleteFilePath;  //ビルドエラー としたり、 _TCHAR cszPath[DeleteFilePath.GetLength()];  // TCHAR型 としたり、 TCHAR cszPath[256];  // TCHAR型 _tcscpy(cszPath, DeleteFilePath);  // CString型→TCHAR型 ・・・とやってみましたが、出来ません。 http://www.usefullcode.net/2006/12/post_13.html http://www5d.biglobe.ne.jp/~noocyte/Programming/Windows/WindowsTips.html#MoveToRecycleBin とかが参考になりそうです。 先程も書きましたが const _TCHAR cszPath[] = _TEXT ( "C:\\a.txt\0C:\\b.txt\0" ); の代入がうまく行きません。 ____________________________________________________________________________________________________________________________________ http://sysneitf.ifdef.jp/shell_filestotrash.html 以下、参考にした部分 // 複数ある場合は、パスを'\0'で区切る。終端は、'\0''\0'である必要がある  const _TCHAR cszPath[] = _TEXT ( "C:\\a.txt\0C:\\b.txt\0" ); // "c:\\a.txt"と"C:\\b.txt" をゴミ箱へファイルを移動するサンプル (シェルエミュレート)  SHFILEOPSTRUCT sfs;  memset ( &sfs, 0, sizeof ( SHFILEOPSTRUCT ) );  sfs.fFlags = FOF_NOERRORUI | FOF_SIMPLEPROGRESS | FOF_ALLOWUNDO;// ゴミ箱へ移動の確認をする場合  FOF_ALLOWUNDO をつける;  sfs.wFunc = FO_DELETE;  sfs.pFrom = cszPath;  if ( 0 != SHFileOperation ( &sfs ) )  {   MessageBox ( NULL,   _TEXT ( "SHFileOperation 失敗" ),   _TEXT ( "エラー" ),   MB_OK | MB_ICONSTOP );  } どなたか、お教え下さると嬉しいですm(_ _)m

  • CSting を TCHAR [] に変換したい。

    Visual Sutdio 2010 , VC++ , MFC でファイルリスト一覧作成ソフトを作っている者です。 CSting 型の _T("~\0~\0\0") を TCHAR [] に変換したいです。 CSting 型の変数名は、DeleteFilePathです。 '\0' を他の文字に置換して確認した所、正しく入っています。 現在は、4096文字の文字列配列に入れています。 ゴミ箱に移動できる時とできない時があります。 _______________________________________________________________________________ ■現在のコード  index = -1;  while ((index = CFileListCreatorDlg::m_xcList.GetNextItem  (index, LVNI_ALL | LVNI_SELECTED)) != -1)  {   CString FullPathString = CFileListCreatorDlg::m_xcList.GetItemText(index,2);   if (FullPathString.Right(1) != _T("\\")){     ::SetFocus(::GetDlgItem(m_hWnd,IDC_LIST));    FullPathString.Replace(_T ("\\"),_T("\\\\"));    DeleteFilePath = DeleteFilePath + FullPathString + _T('\0');    CFileListCreatorDlg::m_xcList.DeleteItem(index);   }   index--;  }  DeleteFilePath = DeleteFilePath + _T('\0');  _TCHAR cszPath[4096];   // TCHAR型  _tcscpy(cszPath, DeleteFilePath);  // CString型→TCHAR型  SHFILEOPSTRUCT sfs;  memset ( &sfs, 0, sizeof ( SHFILEOPSTRUCT ) );  sfs.fFlags = FOF_NOERRORUI | FOF_SIMPLEPROGRESS | FOF_ALLOWUNDO;// ゴミ箱へ移動の確認をする場合 FOF_ALLOWUNDO をつける;  sfs.wFunc = FO_DELETE;  sfs.pFrom = cszPath;  if ( 0 != SHFileOperation ( &sfs ) )  {   MessageBox(_T("ゴミ箱に移動できませんでした"),_T("SHFileOperation 失敗"),MB_OK);   return 0;  } _________________________________________________________________________________________________________________________________________________ 5回に1回成功するので、不思議です。 ファイルのパスは、リストコントロールのアイテムに格納されていて、 削除したいアイテムを選択肢、Shift + Delete で、ゴミ箱に削除する ユーザー関数が呼び出されます。(ゴミ箱に移動するだけで、確認メッセージは出なくていいです。) 今まで、具体的した事を記すと以下のようになります。 cszPath = const_cast<LPTSTR>(static_cast<LPCTSTR>DeleteFilePath;  //ビルドエラー としたり、 _TCHAR cszPath[DeleteFilePath.GetLength()];  // TCHAR型 としたり、 TCHAR cszPath[256];  // TCHAR型 _tcscpy(cszPath, DeleteFilePath);  // CString型→TCHAR型 ・・・とやってみましたが、出来ません。 http://www.usefullcode.net/2006/12/post_13.html http://www5d.biglobe.ne.jp/~noocyte/Programming/Windows/WindowsTips.html#MoveToRecycleBin とかが参考になりそうです。 先程も書きましたが const _TCHAR cszPath[] = _TEXT ( "C:\\a.txt\0C:\\b.txt\0" ); の代入がうまく行きません。 ____________________________________________________________________________________________________________________________________ http://sysneitf.ifdef.jp/shell_filestotrash.html 以下、参考にした部分 // 複数ある場合は、パスを'\0'で区切る。終端は、'\0''\0'である必要がある  const _TCHAR cszPath[] = _TEXT ( "C:\\a.txt\0C:\\b.txt\0" ); // "c:\\a.txt"と"C:\\b.txt" をゴミ箱へファイルを移動するサンプル (シェルエミュレート)  SHFILEOPSTRUCT sfs;  memset ( &sfs, 0, sizeof ( SHFILEOPSTRUCT ) );  sfs.fFlags = FOF_NOERRORUI | FOF_SIMPLEPROGRESS | FOF_ALLOWUNDO;// ゴミ箱へ移動の確認をする場合  FOF_ALLOWUNDO をつける;  sfs.wFunc = FO_DELETE;  sfs.pFrom = cszPath;  if ( 0 != SHFileOperation ( &sfs ) )  {   MessageBox ( NULL,   _TEXT ( "SHFileOperation 失敗" ),   _TEXT ( "エラー" ),   MB_OK | MB_ICONSTOP );  } どなたか、お教え下さると嬉しいですm(_ _)m

  • 陰関数の計算プログラムを教えてください

    x^2+y^2=1のような陰関数において、xを-5から100まで0.1ずつ増加させるときのyの値を求めるプログラムを教えてください。言語は特に何でも大丈夫です

  • C⇒C++変換ツール

    お世話になります C言語をC++に変換するツールを探しております。 ご存知の方、いましたら教えていただけないでしょうか。 ※C,C++混在のコンパイル方法とかコメントのみの変換ではなく、 純粋に言語変換を探しております。 $50の物は見つけましたけど、できればフリーの物を使用したいと考えております

  • プログラムの動作の仕方

    この下のプログラムは、WRITE <ファイル名>をコマンド行で入力すると、動作するプログラムなのですが、この通りにWRITE <test>としてもできません。 やり方を教えてください. #include <iostream> #include <fstream> using namespace std; int main(int argc,char *argv[]) { if(argc!=2){ cout << "使い方:WRITE<ファイル名>" << endl; return 1; } ofstream out(argv[1]); //出力ファイル if(!out){ cout << "出力ファイルが開けません" << endl; return 1; } char str[80]; cout << "文字列をディスクに書き込み、$で停止します" << endl; do{ cout << ": "; cin >> str; out << str << endl; }while(*str!='$'); out.close(); return 0; } お願いします。

  • プログラムの動作

    10文字をスキップするプログラムなのですが、どのようにスキップしているのかわからないので教えてください。 下にソースコードを書きます。 #include <iostream> using namespace std; //10文字をスキップする istream &skipchar(istream &stream) { int i; char c; for(i=0; i<10; i++)stream >> c; return stream; } int main() { char str[80]; cout << "いくつかの文字を入力する:"; cin >> skipchar >> str; cout << str << endl; return 0; } よろしくおねがいします。

  • windowsプログラミングの試験、問題集について

    c言語のwindowsプログラミングを学ぼうかと思っているのですが、 その際、何か試験や問題などを目標にして学びたいと思っています。 しかし、検索してみたところ、c言語の試験や問題集はあっても、 windowsプログラミングの試験、問題集は見つかりませんでした。 windowsプログラミングの試験、問題集は本当にないのでしょうか? また、なぜないのか、知っている方や勉強のための いい目標になるものを知っている方がいたら、ぜひ教えてください。 よろしくお願いします。