• ベストアンサー

string→CStringの型変換について

過去の質問をみてもよくわからなかったので、 ここで質問させてください。 いままでVBで開発していましたが、最近C++で開発を始めました。 string型からCString型への文字変換の仕方がわからず困りました。 既存のプログラムの修正を行っており、なぜかsystem名前空間の 使用ができない為、このsystem名前空間を使用せずに 変換できる良い方法はないのでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • shibamu
  • ベストアンサー率50% (10/20)
回答No.1

std::stringの文字列をCStringオブジェクトに代入するという意味でしょうか? それでしたら以下の方法はどうでしょう?(参考サイトの完全受け売りですが…) std::string strStdString ("Hello!"); // CStringのコンストラクタを用いて代入 // std::stringのc_str()メソッドでconst char*の文字列を得る CString strCString (strStdString.c_str());

参考URL:
http://cstrings.blogspot.com/2006/08/how-to-convert-from-stdstring-to.html

その他の回答 (1)

  • guccii
  • ベストアンサー率31% (14/44)
回答No.2

#1の回答者様の回答で解決ならば問題ないのですが、もし質問されている内容と食い違いがあるようであれば、文字列クラスはいろんな環境でいろんなクラスといろんな文字コードがかかわってきますので、もう少し詳しく聞いてもらわないと誰も回答できません。 CStringはMFCのですよね。多分使っているのはVC++2003以前のもの。 stringは?標準ライブラリのstd::string?.NETのSystem::String? もしかして、VB.NETからC++(MFC,ANSI)?C++.NET(アンマネージ部分でMFCを利用)?に文字列データを渡そうとしてます?

Sana98
質問者

お礼

コメント有難うございます。 NO1のやり方でできました! VusualSutudio2005のVC++を使用していました。 助かりました。有難うございました。

関連するQ&A