「Microsoft Visual Cppコード集」の版間の差分
ナビゲーションに移動
検索に移動
細 (ページ Microsoft Visual C++コード集 を Microsoft Visual Cppコード集 へ移動: モジュール版PHPで稼働させた場合、「C++」が「C_」に置換されるため、暫定対策としてページ名を変更。) |
|||
3行目: | 3行目: | ||
Microsoft Visual C++ 2008をベースとしています。 | Microsoft Visual C++ 2008をベースとしています。 | ||
== フォームアプリのデバック中、「出力」ウィンドウにメッセージを出す == | == TIPS == | ||
=== 文字列の結合(ネイティブ) === | |||
<source lang="cpp"> | |||
const char* c1 = "123"; | |||
const char* c2 = "abc"; | |||
std::string s = std::string(c1) + c2; // s -> "123abc" | |||
</source> | |||
-- 2010年7月5日 (月) 16:10 (UTC) | |||
=== フォームアプリのデバック中、「出力」ウィンドウにメッセージを出す === | |||
<source lang="cpp"> | <source lang="cpp"> | ||
13行目: | 25行目: | ||
-- 2010年7月4日 (日) 08:35 (UTC) | -- 2010年7月4日 (日) 08:35 (UTC) | ||
== deleteによる2重の領域開放をした場合の動作 == | === deleteによる2重の領域開放をした場合の動作 === | ||
<source lang="cpp"> | <source lang="cpp"> | ||
32行目: | 44行目: | ||
-- 2010年7月4日 (日) 10:08 (UTC) | -- 2010年7月4日 (日) 10:08 (UTC) | ||
== トラブルシューティング == | |||
=== インクルード時に警告が表示され、インクルードに含まれるクラスが使用できない === | |||
1>.\StringTest.cpp(2) : warning C4627: '#include <string>': プリコンパイル済みヘッダーの使用を検索中にスキップされました | |||
1> ディレクティブを 'stdafx.h' に追加するか、プリコンパイル済みヘッダーをビルドし直します | |||
対策は、出力の内容通りに「#include "stdafx.h"」を追加することです。ただし、インクルードの先頭行である必要があります。 | |||
-- 2010年7月5日 (月) 16:10 (UTC) | |||
== 更新履歴 == | == 更新履歴 == | ||
* ページ作成 -- 2010年7月4日 (日) 08:35 (UTC) | * ページ作成 -- 2010年7月4日 (日) 08:35 (UTC) |
2010年7月5日 (月) 16:10時点における版
Microsoft Visual C++ 2008をベースとしています。
TIPS
文字列の結合(ネイティブ)
const char* c1 = "123";
const char* c2 = "abc";
std::string s = std::string(c1) + c2; // s -> "123abc"
-- 2010年7月5日 (月) 16:10 (UTC)
フォームアプリのデバック中、「出力」ウィンドウにメッセージを出す
System::Diagnostics::Debug::WriteLine("test");
Console::WriteLineでは出力できませんでした。
-- 2010年7月4日 (日) 08:35 (UTC)
deleteによる2重の領域開放をした場合の動作
Test *p = new Test;
p->v1 = 1;
p->v2 = '1';
delete p;
delete p;
Debugビルドの場合、上記のコードを実行すると以下のダイアログが出ました。
Releaseビルドの場合、特別なダイアログも出さず異常終了しました。
-- 2010年7月4日 (日) 10:08 (UTC)
トラブルシューティング
インクルード時に警告が表示され、インクルードに含まれるクラスが使用できない
1>.\StringTest.cpp(2) : warning C4627: '#include <string>': プリコンパイル済みヘッダーの使用を検索中にスキップされました 1> ディレクティブを 'stdafx.h' に追加するか、プリコンパイル済みヘッダーをビルドし直します
対策は、出力の内容通りに「#include "stdafx.h"」を追加することです。ただし、インクルードの先頭行である必要があります。
-- 2010年7月5日 (月) 16:10 (UTC)
更新履歴
- ページ作成 -- 2010年7月4日 (日) 08:35 (UTC)