Visual C++ で string::operator + STL 関数を使用する方法

文書翻訳 文書翻訳
文書番号: 158207 - 対象製品
メモ Microsoft Visual C++ .NET 2002年と Microsoft Visual C++ .NET 2003年は、Microsoft .NET Framework によって提供される、両方マネージ コード モデルをサポートし、アンマネージのネイティブの Microsoft Windows のコード モデル。 この資料の情報は、アンマネージ Visual C++ コードのみに適用されます。Microsoft Visual C++ 2005 では、Microsoft .NET Framework によって提供されるマネージ コード モデルとアンマネージ ネイティブ Windows コード モデルの両方をサポートします。
すべて展開する | すべて折りたたむ

目次

概要

Visual C++ で string::operator + STL 関数を使用する方法を次のサンプル コードに示します。

詳細

必要なヘッダー

   <string>
				

プロトタイプ

   Function 1:
       template<class _E, class _TYPE, class _A> inline
       basic_string<_E, _TYPE, _A>
       operator+(const basic_string<_E, _TYPE, _A>& LString,
                 const _E *RCharArray);

   Function 2:
       template<class _E, class _TYPE, class _A> inline
       basic_string<_E, _TYPE, _A>
       operator+(const _E *LCharArray,
                 const basic_string<_E, _TYPE, _A>& RString);

   Function 3:
       template<class _E, class _TYPE, class _A> inline
       basic_string<_E, _TYPE, _A>
       operator+(const basic_string<_E, _TYPE, _A>& LString,
                 const _E RChar);

   Function 4:
       template<class _E, class _TYPE, class _A> inline
       basic_string<_E, _TYPE, _A>
       operator+(const _E LChar,
                 const basic_string<_E, _TYPE, _A>& RString);

   Function 5:
       template<class _E, class _TYPE, class _A> inline
       basic_string<_E, _TYPE, _A>
       operator+(const basic_string<_E, _TYPE, _A>& LString,
                 const basic_string<_E, _TYPE, _A>& RString);
				
メモ プロトタイプのクラスとパラメーターの名前がヘッダー ファイルでバージョンと一致しません。 一部が読みやすいように変更されました。

説明

string::operator + 関数のバージョンを 5 つがあります。 2 つの関数は、NULL 終端文字配列と、basic_string を連結する使用されます。 2 つの関数は、文字と、basic_string を連結する使用されます。 basic_string の 2 つの変数を連結するには、前回関数を使用します。

サンプル コード

////////////////////////////////////////////////////////////////////// 
// 
// Compile options needed: /GX
// 
// StringPlus.cpp : Illustrates how to use the operator+ to concatenate
//                  a null-terminated character array and a basic_string,
//                  how to concatenate a character and a basic_string,
//                  and how to concatenate two basic_string variables.
// 
// Functions:
// 
//    operator+ : Concatenates a null-terminated character array and
//                a basic_string.
//    operator+ : Concatenates a character array and a basic_string.
//    operator+ : Concatenates two basic_string variables.
// 
// Written by Derek Jamison
// of Microsoft Product Support Services,
// Copyright (c) 1996 Microsoft Corporation. All rights reserved.
////////////////////////////////////////////////////////////////////// 

// The debugger can't handle symbols more than 255 characters long.
// STL often creates symbols longer than that.
// When symbols are longer than 255 characters, the warning is disabled.

#pragma warning(disable:4786)
#include <string>
#include <iostream>
using namespace std;

#if _MSC_VER > 1020   // if VC++ version is > 4.2
   using namespace std;  // std c++ libs implemented in std
   #endif

void main()

{

   string result;
   string S1="ABC";
   string S2="DEF";
   char CP1[]="GHI";
   char C='J';

   cout << "S1 is " << S1 << endl;
   cout << "S2 is " << S2 << endl;
   cout << "CP1 is " << CP1 << endl;
   cout << "C is " << C << endl;

   result=S1+CP1;                           // Function 1  (ABCGHI)
   cout << "S1+CP1 is " << result << endl;

   result=CP1+S1;                           // Function 2  (GHIABC)
   cout << "CP1+S1 is " << result << endl;

   result=S1+S2;                            // Function 3  (ABCDEF)
   cout << "S1+S2 is " << result << endl;

   result=S1+C;                             // Function 4  (ABCJ)
   cout << "S1+C is " << result << endl;

   result=C+S1;                             // Function 5  (JABC)
   cout << "C+S1 is " << result << endl;

}
				
プログラムの出力が:
S1 is ABC
S2 is DEF
CP1 is GHI
C is J
S1+CP1 is ABCGHI
CP1+S1 is GHIABC
S1+S2 is ABCDEF
S1+C is ABCJ
C+S1 is JABC
				

関連情報

詳細については string::operator ながらを参照してください、次のマイクロソフト開発者向けネットワーク (MSDN) Web サイト。
http://msdn.microsoft.com/en-us/library/ek0d1btk(VS.80).aspx

プロパティ

文書番号: 158207 - 最終更新日: 2006年1月9日 - リビジョン: 5.1
この資料は以下の製品について記述したものです。
  • The Standard C++ Library?を以下の環境でお使いの場合
    • Microsoft Visual C++ 4.2 Enterprise Edition
    • Microsoft Visual C++ 5.0 Enterprise Edition
    • Microsoft Visual C++ 6.0 Enterprise Edition
    • Microsoft Visual C++ 4.2 Professional Edition
    • Microsoft Visual C++ 5.0 Professional Edition
    • Microsoft Visual C++ 6.0 Professional Edition
    • Microsoft Visual C++, 32-bit Learning Edition 6.0
    • Microsoft Visual C++ 2005 Express Edition
    • Microsoft Visual C++ .NET 2003 Standard Edition
    • Microsoft Visual C++ .NET 2002 Standard Edition
キーワード:?
kbhowto kbinfo kbcode kbmt KB158207 KbMtja
機械翻訳の免責
重要: このサポート技術情報 (以下「KB」) は、翻訳者による翻訳の代わりに、マイクロソフト機械翻訳システムによって翻訳されたものです。マイクロソフトは、お客様に、マイクロソフトが提供している全ての KB を日本語でご利用いただけるように、翻訳者による翻訳 KB に加え機械翻訳 KB も提供しています。しかしながら、機械翻訳の品質は翻訳者による翻訳ほど十分ではありません。誤訳や、文法、言葉使い、その他、たとえば日本語を母国語としない方が日本語を話すときに間違えるようなミスを含んでいる可能性があります。マイクロソフトは、機械翻訳の品質、及び KB の内容の誤訳やお客様が KB を利用されたことによって生じた直接または間接的な問題や損害については、いかなる責任も負わないものとします。マイクロソフトは、機械翻訳システムの改善を継続的に行っています。
英語版 KB:158207
Microsoft Knowledge Base の免責: Microsoft Knowledge Baseに含まれている情報は、いかなる保証もない現状ベースで提供されるものです。Microsoft Corporation及びその関連会社は、市場性および特定の目的への適合性を含めて、明示的にも黙示的にも、一切の保証をいたしません。さらに、Microsoft Corporation及びその関連会社は、本文書に含まれている情報の使用及び使用結果につき、正確性、真実性等、いかなる表明・保証も行ないません。Microsoft Corporation、その関連会社及びこれらの権限ある代理人による口頭または書面による一切の情報提供またはアドバイスは、保証を意味するものではなく、かつ上記免責条項の範囲を狭めるものではありません。Microsoft Corporation、その関連会社 及びこれらの者の供給者は、直接的、間接的、偶発的、結果的損害、逸失利益、懲罰的損害、または特別損害を含む全ての損害に対して、状況のいかんを問わず一切責任を負いません。(Microsoft Corporation、その関連会社 またはこれらの者の供給者がかかる損害の発生可能性を了知している場合を含みます。) 結果的損害または偶発的損害に対する責任の免除または制限を認めていない地域においては、上記制限が適用されない場合があります。なお、本文書においては、文書の体裁上の都合により製品名の表記において商標登録表示、その他の商標表示を省略している場合がありますので、予めご了解ください。

フィードバック

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com