検索結果 2 件
- 10年前
- フォーラム: C言語何でも質問掲示板
- トピック: テンプレートを利用した関数の書き方
- 返信数: 3
- 閲覧数: 2881
Re: テンプレートを利用した関数の書き方
みけCATさんにご提示いただいた Sa* a = GetOne<Sa, SaArray>(0, sa_array); // 型を指定しないと、戻り値の型がわからない こちらに呼び出し側を変えたらコンパイラが通してくれるようになりました。 「a」も「sa」も宣言してるから明示的な指定がすでにされているじゃん?、というわけではないのですね。 hogeさんにご呈示いただいたコードについて最初、Sa*が返ってくるのか疑問でしたが 実際にいくつかテストしてみて期待通りのものが返ってきたため、value_typeとはそういう意味だったのだな、と 納得できました。 どちらもまだ理解と言うにはほど遠いものでは...
- 10年前
- フォーラム: C言語何でも質問掲示板
- トピック: テンプレートを利用した関数の書き方
- 返信数: 3
- 閲覧数: 2881
テンプレートを利用した関数の書き方
はじめまして。 OS:Windows7 開発用アプリ:VisualStudio2010 VC++ 上記の環境にてちまちまとプログラムを組んでいまして、 今回返り値と引数の型だけが違う処理関数をテンプレートでまとめてみようとしましたが 理解が全くないまま使おうとしたのが災いし、エラーでコンパイルが通りませんでした。 以下、単純化したソースとエラー文です。 #include <string> #include <vector> struct Sa { int no; std::string str; }; typedef std::vector<Sa> SaArray; struct Sb { i...