トップページ > プログラム > 2014年05月26日 > l0k3Jdk0

書き込み順位&時間帯一覧

15 位/191 ID中時間01234567891011121314151617181920212223Total
書き込み数1001000002010000000001006



使用した名前一覧書き込んだスレッド一覧
デフォルトの名無しさん
Visual Studio 2013 SP3
くだすれC++/CLI(初心者用)part2
【初心者歓迎】C/C++室 Ver.91【環境依存OK】
C++相談室 part112

書き込みレス一覧

Visual Studio 2013 SP3
602 :デフォルトの名無しさん[sage]:2014/05/26(月) 00:22:27.17 ID:l0k3Jdk0
お騒がせしました。
アンロードしているプロジェクトがあると、この現象が起こるみたいです。
アンロードではなく削除したら、バッチビルドできました。便利ですね。

でも、全て選択と全て解除しかないので、特定のプロジェクト構成でバッチビルド
したいときに、たくさんのチェックボックスをOn/Offしなくてはならないですね。
今やっているのは、一つのソリューションに8つのプロジェクトがあって、各4つの
ビルドの構成(Debug1, Debug2, Release1, Release2) みたいな感じなので、
Debug1と2のみバッチビルドしたい時など、そういうのをバッチファイルか何かに
設定できないでしょうか?
くだすれC++/CLI(初心者用)part2
838 :デフォルトの名無しさん[sage]:2014/05/26(月) 03:20:04.74 ID:l0k3Jdk0
c++/cli初めて作成しています。

c++プロジェクトでライブラリを作成して
void func1(const char *p){
cout << p << endl;
}
を定義して、
c++/cliプロジェクトでこの関数を呼び出すと、

func1("Hello World"); //呼び出し成功
func1("Hello" + "World"); //型 "System::String ^" の引数は型 "const char *" のパラメーターと互換性がありません

となったので、エラー解決のために少しググって、よくわからないまま
char* pStr = (char*)System::Runtime::InteropServices::Marshal::StringToHGlobalAnsi("Hello" + "World").ToPointer();
のようにして、
func1(pStr); //呼び出し成功
しました。

この場合、
func1("Hello" + "World");
を実行可能に出来るようにc++ライブラリ側で、この引数を受けられるfunc1関数を定義することは可能でしょうか?
くだすれC++/CLI(初心者用)part2
840 :デフォルトの名無しさん[sage]:2014/05/26(月) 09:14:28.60 ID:l0k3Jdk0
>>839
そうですか無理ですか。
出来れば、出来ない理由を教えてください。
くだすれC++/CLI(初心者用)part2
842 :デフォルトの名無しさん[sage]:2014/05/26(月) 09:42:14.96 ID:l0k3Jdk0
>>841
なるほど。ありがとうございました。
【初心者歓迎】C/C++室 Ver.91【環境依存OK】
52 :デフォルトの名無しさん[sage]:2014/05/26(月) 11:46:22.33 ID:l0k3Jdk0
Visual Studioだと
WCHAR
wchar_t

UINT
uInt
u_int
UINT32
unsigned int
のように同じ型がたくさんありますが、どれを使うかは自分の好みですか?
いつも適当に使っているので、いろんなのが混じって混乱します。
上級者の人はどういうのを使うのでしょうか?
C++相談室 part112
717 :デフォルトの名無しさん[sage]:2014/05/26(月) 21:16:32.24 ID:l0k3Jdk0
関数のtemplate初心者です。
あまり良い例ではないかもしれませんが、以下のような関数を作った場合、
templateを使って引数では、string,char か wstring,wchar_t のどちらにも対応できますが、
関数の中で
string,char対応の関数(sprintf)を使う場合と
wstring,wchar_t対応の関数(wsprintf)を使う場合と
どうやって切り替えたらよいのでしょうか?

template<typename stringT, typename charU> stringT join_string_and_char(const stringT &str, const charU c){
      charU stringJoined[100];
//     sprintf(stringJoined, "%s and %c", str.c_str(), c);
      wsprintf(stringJoined, L"%s and %c", str.c_str(), c);
      return stringJoined;
}

void main(){
//     string result1 = join_string_and_char<string, char>("string", 'C');
//     cout << result1 << endl;

      wstring result2 = join_string_and_char<wstring, wchar_t>(L"wstring", 'C');
      wcout << result2 << endl;
}


※このページは、『2ちゃんねる』の書き込みを基に自動生成したものです。オリジナルはリンク先の2ちゃんねるの書き込みです。
※このサイトでオリジナルの書き込みについては対応できません。
※何か問題のある場合はメールをしてください。対応します。