C++で作れるものは何?

このQ&Aのポイント
  • C++を使用することで、Windows GUIアプリのゲームを作成することができます。
  • C++では、Windows GUIアプリやLinuxを使用する際にさまざまなことができます。
  • また、C++を使用してLinuxカーネルをいじったり、サーバを操作することも可能です。
回答を見る
  • ベストアンサー

C++で何が作れるでしょうか。

C++で何が作れるでしょうか。 素朴な質問ですみません。 私は個人でC++を学習しましたが、C++で何を作るのか分かりません。 VisualC++を使ってWindows GUIアプリのゲームしか思いつきません。 また、C++でWindows GUIアプリやLinuxを使う時はどんなことができますでしょうか? Web企業に多い例ですが、C++でLinuxカーネルとかでサーバをいじっちゃうことがありますが、 どういうことでしょうか。 C++はPG学習の面では良かったと思いますが、実践の面で何ができるか、良かったら教えてください。 また、参考になる書籍とかありましたら、紹介をお願いします。

noname#139165
noname#139165

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

  • ベストアンサー
  • nak777r
  • ベストアンサー率36% (49/136)
回答No.4

考え方が逆です あなたが何を作りたいのでしょうか です そして、それを作る為の手段の一つとして、VisualC++ があるのです。 PG学習を終え、与えられた課題は作れるレベルになりました。 でも、その後、実際に何をすればいいの? 自分で作りたいと思う物が思い浮かばない、と思うのなら、 とりあえず、ベクター等にあるフリーソフトやシェアウェアと同等の物を 自分で作ってみてはいかがでしょうか

noname#139165
質問者

お礼

ご回答ありがとうございました。 参考にします。 >考え方が逆です なるほど。何か作るものがなければ意味がないでしょうね。

その他の回答 (3)

  • zwi
  • ベストアンサー率56% (730/1282)
回答No.3

C++で出来ないプログラムやアプリは無いと思います(面倒ってことはありますが)。 現在あなたが使っているもの自体が大半C/C++言語で作られています。 WindowsOS、InternetExplorer、ExcelやWord、PhotoShop、GIMP、VisualC++のIDE、C++コンパイラ自体、RubyやPerl、PHPなどのスクリプト言語、LinuxOS(C言語)、MySQLやApatcheもそうですね。 何をしたいかで、紹介するべき書籍も変わります。 izumasaさんは、何が作りたいのでしょうか?ここは他の人が決めることではありませんよ。

  • Tasuke22
  • ベストアンサー率33% (1799/5383)
回答No.2

アイデア次第、ですね。 ゲームが出来ると言っても、既存のゲームは出来ても世の中に無い ゲームのアイデアは難しい・・・ 小規模のプログラムでも、仕様段階のエラーは常にあるといいますし、 プログラム以前の問題が難しいのですね。 大規模なシステムでは何をすべきか、企画、要件の定義が非常に難し い、なかなか論理矛盾を無くせません。というか、何かしないといけ ないのに何をしたらいいのか、問題は何なのかの全貌が見えないことが 多いのです。 まあ、コンピュータの発展は、高速計算による今まで不可能だったも のを可能にする、例えばスペースシャトルの宇宙からの進入角度などを 手で計算していたら間に合わないとか、膨大な事務処理が滞って、 品物があるのに伝票がないために出荷できないとか、その処理速度が キーになっていましたね。 また、機械を微妙にコントロールできるのもコンピュータならではです。 昔の超人的な職人の必要性を少なくしてきた事実があります。 コストダウンも大きいですね。印鑑なんて80円くらいで30分もあれば 出来る時代です。 超困難な計画問題もコンピュータならではのチャレンジが出来ます。 生産計画、出荷計画、配送計画など色々ありますが、その作業をやって いる人しか理解が出来ない、後継者が育ちにくい、という問題のシス テム化です。 簡単な部類には、看護師さんの勤務表や学校の時間割です。Excelくら いで簡単に出来ると思ってチャレンジすると、それでも泥沼化してしま います。 自分の作業の便利化も常に考えて、単純なプログラムが大きな効果を 上げる場合があります。 例えば、コマンドプロンプト。これで目的のフォルダにたどり着くのは 今は長いフォルダ名や日本語名、何重にも階層があるので目的のファイ ルになかなかたどり着けない。1文字の入力ミスが時間を食う。 それでエクスプローラで目的のフォルダを指して右ボタンから送るで 送られてくるフォルダ名を受けて、それをカレントとしてコマンドプロ ンプトを開くプログラムを作りました。全部で5行くらい。 こんなに小さくて便利さを感じるプログラムは無いです。 近年ならではなら、ActionScriptでしょうか。動画をプログラムする というか、面白い動き、美しい動き、まるでダンスの振付を考えて いるようです。 自作OSも先は長いですが面白い分野だと思います。 単純なベースになるソースがフリーで出ていたと思います。 まあ、過去のプログラムの分野も語り尽せないくらい広いし、深い。 今後も多くの分野でプログラム化が進むでしょう。

noname#139165
質問者

お礼

ご回答ありがとうございました。 参考にします。

回答No.1

> C++で何が作れるでしょうか。  ソフトウェアでできることなら作ろうと思えばほとんど何でも作れると思いますが。  ・ゲーム  ・オフィスソフト等のパッケージソフト  ・各種アセンブラや各種高級言語のコンパイラ、インタープリター  ・オペレーションシステム  ・WEBブラウザ、メールクライアント等  ・その他、いろいろ > C++でLinuxカーネルとかでサーバをいじっちゃうことがありますが、 > どういうことでしょうか。  これだけじゃ意味が分からないけど、サーバで使うLinuxのカーネルを弄るというのなら、もともとソースがC/C++で書かれたものだから十分に可能でしょう。  ま、何でも出来ると言っても作業効率の問題とかありますから、そこは分野によってはC++よりも適した言語がある場合もあります。  出来るできないは、多くの場合は言語の問題ではなく、その目的そのものに対する知識や理解の度合いによってきます。何が出来るではなく、何を作りたいか、そのためにはどんな技術や知識が必要かを明確にできることが大事です。

noname#139165
質問者

お礼

ご回答ありがとうございました。 参考にします。

関連するQ&A

  • Linuxでc言語を学習したいのですが!

      Linuxでc言語を学習したいのですが、色々調べてみても、GUIでの操作ができるという、”Gtk”が候補に挙がっていました。  因みに、LinuxはRed Hat8~Fedora Core3まで使用して、ネットワークサーバーを組んでいます。しかし、GUIで動かしてみると、CPUがCeleron-1.2GHzでも 重いです。  Linuxでc言語を始めようと、考えているのは、組み込みLinuxを選択したいからです。osのカーネルの部分を組み替えるには、c言語が必要だと思ったのです。  まずは、c言語かなと、考えて、windowsでも出来る CPad for Borland C++Compilerを導入して、少しだけ、学習を始めました。このまま、windowsペースのcの学習では、Linuxでのc言語に入れないと考え始めたのです。  他のものもあると思いますが、Linuxでのviエディターベースでcが出来る方法は、何でしょうか?  デストリビュウションに付属のコンパイラーは使ったことも、使い方もしりませんが、lanレベル3の状態でこれらを呼び出すにはどうすればいいのでしょうか? 以上のことについてお伺いします。  1、Linux用のcコンパイラーできれば、デガッパもついてるものはありませんか?別々のはありますが!  2、vi エディターベースで出来ませんか?sshでやれれば一番やりやすいのですが?  3、デストリビュウションに付属のコンパイラーのテキストペースでの使用方法  4、tarペースのインストール方法が良く分かりません。1、の新たなコンパイラーのインストールにrpmであれば助かります。もしtarペースのインストールにつて必要ならば、教えてください。あつかましいですが。 以上4つに、ついてお願いします。

  • C言語で自作GUIツールキットを作成したい

    こんにちは。 初めて、C言語でGUIツールキットを自作したいと考えております。 目的としては、どうやってGTK+などのGUIツールキットは画面にウィンドウやボタンといったものが表示しているのか学習をしたいためです。 最初は、GUIツールのソースをみて解釈しようとしたのですが、C言語自体が独学なので意図が読み取れなかったり、どこで画面を作成しているのか分からず挫折をしてしまいました。 ですので、わかりやすい書籍やWebページがありましたら教えてください。

  • Linux上で動くシステムとしてC系とJavaは

    C系を学習しようかJavaを学習しようか迷っております。 用途としては、自社の全支店、他企業(承諾済みとします)のWebコンテンツ、サーバ上のデータ他、いわゆるデータを自動で吸収(読み取り、保存)し、それを専用のLinux機器にてデータの加工、再処理などを数学なども利用して実行したいと考えております。 似たようなものとして(?)良く分かりませんがGoogleの検索ロボットのようなものだと思います。 自分はPHP、JavaScript等のWeb言語などは習得しているのですが、C系やJavaは学習しておりません。 ただ、オブジェクト指向という点は少々慣れていると思います。 具体例がかなり説明不足だと思いますが、このようにパソコン内部でシステムを動かす際にはどちらの言語がいいのでしょうか? 色々とWebで調べてみたのですが難しくて分かりませんでした。 各言語で出来ているソフトウェアを考えても、Apache、Linux、Eclipseとかしか分からずシステムとしてはC系の方がいいのかなと単純に思っております。 C系とJavaの違いとして、ライブラリ、フレームワークがあると思うのですが、C系は基本的に殆ど自分でプログラミングを作成する、JavaはJSPとかライブラリ、フレームワークが多いようなので開発は楽そうな感じはするのですが。 それ以外のお互いの利点が良く分かりません。 Javaに関しては、PHP等よりも型指定などにより複雑だけどセキュアな銀行などで使われるWebアプリ、携帯アプリとかぐらいしか思いつかないレベルです。 すみませんが以上の点でよろしくお願いします。

  • Linux上でEclipseを使用するには

    Linux上でEclipseを使用するには 開発環境のライセンスの都合により、 あるマシン上でしか実行できないサーブレットをもつWEBアプリを開発しています。 WEBアプリはCUIモードのLinux上で動いていますが、現状複数の開発者が、端末よりサーバーに接続しサーバー上のJSPファイルを直接修正している状況です。 できればこの環境を以下のように変えたいのです。 ・LinuxはGUIモード ・LinuxにEclipseをインストール ・各端末(Windows)からLinuxにGUIモードで接続(必要なエミュレータは?) LinuxサーバーのWEBアプリケーションのディレクトリ構成は、WEB-INFの下にweb.xmlが存在しませんし(WEBアプリのディレクトリ構成を守らなくてもWEBアプリって動くの?)、Eclipseのダイナミックウェブプロジェクトのディレクトリ構成にリンクを張ったりしてごまかすのも大変そうですが、 まずは、上記の環境にするための方法がありましたら、 アイデアを教えていただきたいです。 どうぞよろしくお願いいたします。

  • malloc.cを見たい

    TurboLinux10でとあるプログラムを実行していましたが、 coreファイルを吐き出してGUIが終了してしまうことがあります。  gdb -c core.**** 実行ファイル名 というコマンドでGUIが終了した原因を調べたところ、  kernel/malloc.c:3415  kernel/malloc.c そのようなファイルやディレクトリは見つかりません。 と出ていました。 malloc.cというソースファイルを見たいのですが、 どこから入手すればよいでしょうか。 TurboLinux10は「全パッケージ」を選択してインストールしており、 カーネル再構築もできるのでカーネルのソースファイルは入っているはずですが、 最低3415行もあるmalloc.cは存在しません(十数行の同名ファイルはありました)。 TurboLinux10DesktopのソースファイルをFTPサーバーからダウンロードしようと、 ftp://ftp.turbolinux.co.jp/pub/TurboLinux/TurboLinux/ia32/Desktop/10/source/SRPMS/ に行ってみたのですが、 勿論malloc.cが入っていそうなパッケージがわかりません。 (そもそも、「malloc.cが見つからない」と出た場合にmalloc.cを入手してくるべきなのでしょうか)

  • C#について

    C#で、データベースの勉強をしていますが、 市販の一般書籍では、サーバーエクスプローラ等、GUIを使用して簡単に、データベースアプリケーションが作成できるなどの記述が多くしてあります。 VBやC#のデータベースの記述に関するところは、ほとんどの書籍(9割以上)が、GUIで、DB接続、ドラッグ&ドロップで、データセット作成とか、説明されていますが、少なくとも、私の経験上、VB.NETの開発で、そんな現場に出会ったことがありません。DB接続も、データセット取得も、すべてコードで記述しました。 なんで、そんな一般書籍は、使いもしないことばかり触れているのだろうと毎日思うのですが、C#のデータベース(ADO.NET)で、すべてプログラムコードで、記述している一般書籍はありませんでしょうか? できれば、VisualStudio2005か、2008対応でお願いします。

  • Linuxでのsendmailのインストール

     Linuxカーネル2.4.20のホームサーバですが、GUIイン ターフェイスはなく、telnetでwin2kからアクセスし、コン マンドで編集や設定などをやっています。ホームサーバは CFカードからの起動で、容量は256MBです。  sendmail8.12.9をダウンロードして、インストールしよ うとしましたが、初めのLinuxアプリのインストールで、付 属の膨大な説明書を読んでやってみましたが、要領を得ま せんでした。  どうすれば、インストールできるのでしょうか。

  • VisualStudio2010(C#)の学習方法

    開いていただきありがとうございます。 自分はこれまで趣味でプログラミングを学習してきた人間ですが、 特に必要に迫られたことがなかったのでGUIアプリケーションではなくCUIアプリケーションを中心に開発してきました。 ですがそろそろGUIアプリケーションにも手を出してみたいとの思いもありVisualStudioを導入したのですが、 率直に言うと躓いている状態であり、力をお貸しいただけないだろうかと質問させていただいた次第です。 現在アプリケーション開発にはC#を用いているのですが、 GUIアプリケーションの開発にはC#そのものの知識だけではなくコンポーネントに関する知識なども要求され、これが躓きの主原因となっています。 例えばラベルであったりボタンであったりは、使いこなすことができれば大変便利なものではありますが、 それらの学習資料であるMSDNが読んでいて分かりにくいというか……日本語なのにさっぱり日本語に見えないことが多々あります。 原文を読めば納得できる場合もあるのですが、生憎と英語力はそれほどではないため、多大な期待を寄せることはできません。 したがいまして手探りで理解できる程度の機能しか用いることができず、全体的に単純なものに落ち着きがちです。 最初は市販の「VisualC#によるアプリケーション開発」のような本を読めばいいかと楽観していましたが、 探し方が悪いのか、これらの本はほとんどがC#の平易な説明に終始しており、自分の欲しい情報は数点あればラッキーといった具合です。 WPFを学べば解決するかとも思いましたが、残念ながら和書は点数が少ないようで程度のあったものを探すことができませんでした。 そのたびそのたびに検索をすることで、なんとかそれらしい物を仕上げてはいますが、 いかんせん体系的に学習していないために知識が散漫としており、特殊例には対処できず、なんともいえない気持ち悪さが残ります。 やはり最終的にはMSDNに挑戦しなければいけないのだなあと思ってはおりますが、そう簡単にはいかないもので、 前段階としてある程度の内容をそれなりに突っ込んで学習することができればなあ……と思うかぎりです。 書籍でもサイトでも構いませんが、「C#の学習」ではなく「VisualStudioの学習」を中心としたもの、 将来的にMSDNに挑むにあたっての橋渡しとなるようなものをご存じでしたら、どうぞご教示いただければと存じます。 曖昧な質問で申し訳ありませんが、どうぞご助力いただければ幸いです。

  • C言語の次のステップは?

    現在、C言語を学習していてコンソールアプリケーションや Web上のCGI等は作れるようになってきました。 次の学習ステップとしてWindowsのアプリケーション作成 か、C++の言語学習にするかを悩んでいます。 C言語でのWindowsアプリケーション開発であれば、SDK(Win32API)に よる開発になると認識しています。この場合であれば特にC++の知識は 不要でしょうか?それともSDKでの開発の場合でもC++の知識は必須に なるのでしょうか? MFCとかを使うのであれば、C++の知識は必須ですよね? あるいはこれからの開発ではオブジェクト指向の知識は必須である ということでC++の学習を経て、Windowsアプリの開発について学習した 方がよろしいでしょうか? 最終的な目標はC/C++にてWindows/Linuxアプリの開発ができるように なりたいと思っています。 当面Windowsアプリを開発するにあたって、C→SDKもしくは C→C++→SDK/MFCのどちらが効率的な学習ステップになるのでしょうか? 皆さんのアドバイスをいただければ幸いです。

  • 開発環境の設定に関する質問です。

    開発環境の設定に関する質問です。 LinuxとWindows両方で動くコンソールアプリを作成したいと思っています。 内容はまだ確定はしていませんが、ネットワークを使った簡単なWebサーバーを作ってみたいと思っています。 開発環境はWindowsXP VisualC++2008Expressです。 そこで質問です。 VisualC++2008Expressのプロジェクト作成時(ファイル作成時も含め)はどのように設定すれば、Linuxに近い環境にすることができるのでしょうか。 何か至らぬところがあればすみません。 ご教授おねがいします。

専門家に質問してみよう