[解決済み] Visual Studio は新しい C / C++ 標準をサポートしますか?
質問
C99 や C++11 など、言語標準に追加されつつある、いつか使えたらいいなと思うような素敵なものを読み続けています。しかし、現在、私たちは Visual Studio で C++ を書くという土地に甘んじています。
標準にある新しいもののどれかが Visual Studio に追加されることはあるのでしょうか、それとも Microsoft はそのために新しい C# の亜種を追加することのほうに興味があるのでしょうか。
編集: 受け入れられた回答に加えて、Visual C++チームのブログを見つけました。
で、具体的にはその中のこの記事。
とても便利です。ありがとうございます!
どのように解決するのですか?
MS はこれに対して一連の公的な返答をしていますが、そのほとんどはユーザーのせいにしています。たとえば、このようなものです。
https://devblogs.microsoft.com/cppblog/iso-c-standard-update/
<ブロッククオート
さて、Visual C++ コンパイラー チームは、なぜ C99 を実装しないのか、という質問を時々受けます。 それは、本当にユーザーからの関心に基づいています。 特定の C99 機能に対する多くの要求を受け取った場合、私たちはその機能 (または類似の機能) を実装するよう努めました。 その例として、可変長マクロがあります。
long long
,
__pragma
,
__FUNCTION__
そして
__restrict
. もし、あなたが仕事で役に立つと思うC99の機能が他にあれば、私たちに教えてください。 私たちはC言語ユーザーからあまり話を聞かないので、積極的に発言してください。
http://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=345360
<ブロッククオート
こんにちは: 残念ながら、私たちのユーザーの大半から寄せられる圧倒的なフィードバックは、私たちが C-99 ではなく C++-0x に注力することを望むということです。私たちは、C-99 の人気のある特定の機能 (可変長マクロ。
long long
) がありますが、それ以上のことは C-99 の領域では (少なくとも短期的には) ほとんど行われないと思われます。
ジョナサン・ケーブス
Visual C++ コンパイラチーム。
これはかなり悲しい現状ですが、MS がユーザーを囲い込みたいのだと思えば納得もいきます。最新の gcc ベースのコードを MSVC に移植することが非常に難しくなり、少なくとも私は非常につらいと思います。
しかし、回避策は存在します。 Intel の C コンパイラーは C99 コードを扱うことができ、gcc と同じフラグを持つので、プラットフォーム間でのコードの移植がはるかに容易になります。 また、インテルのコンパイラはビジュアルスタジオで動作します。 したがって、MS コンパイラーを廃止することで、何らかの価値があると思っているような MS IDE をまだ使用でき、C99 を心ゆくまで使用することができるのです。
より賢明なアプローチは、正直なところ、Intel CC または gcc に移行し、プログラミング環境として Eclipse を使用することです。 私の経験では、Windows、Linux、Solaris、AIX などの間でのコードの移植性が通常重要であり、残念ながら MS ツールではまったくサポートされていません。
関連
-
[解決済み】致命的なエラー LNK1169: ゲームプログラミングで1つ以上の多重定義されたシンボルが発見された
-
[解決済み】cc1plus:エラー:g++で認識されないコマンドラインオプション"-std=c++11"
-
[解決済み] スタックアロケーションにより初期化されていない値が作成された
-
[解決済み] C#の正しいバージョン番号を教えてください。
-
[解決済み] Windows 8でVisual Studioを常にAdministratorとして実行するように強制することはできますか?
-
[解決済み] Visual Studioで、既存のディレクトリツリーをプロジェクトに追加するにはどうすればよいですか?
-
[解決済み] Visual Studio の .suo と .user ファイルをソースコントロールに追加する必要がありますか?
-
[解決済み] Visual Studio CodeとVisual Studioの違いは何ですか?
-
[解決済み] Visual Studioで "stdafx.h "は何に使うのですか?
-
[解決済み】Visual Studioでコードを自動フォーマットする方法とは?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】構造体のベクター初期化について
-
[解決済み] エラーが発生する。ISO C++は型を持たない宣言を禁じています。
-
[解決済み] [Solved] Error C1083: Cannot open include file: 'stdafx.h'
-
[解決済み】C++エラーです。"配列は中括弧で囲まれたイニシャライザーで初期化する必要がある"
-
[解決済み】テンプレートの引数1が無効です(Code::Blocks Win Vista) - テンプレートは使いません。
-
[解決済み】fpermissiveフラグは何をするのですか?
-
[解決済み] 式はクラス型を持つ必要があります。
-
[解決済み】浮動小数点数の乱数生成
-
[解決済み】C++ - 適切なデフォルトコンストラクタがない [重複]。
-
[解決済み】c++で.txtファイルから2次元の配列に読み込む