タグ付けされた質問 「c++」

静的に型付けされた自由形式のマルチパラダイムでコンパイルされた汎用プログラミング言語であるC ++に関する質問。

5
「…」演算子はどのように発音しますか[終了]
現在のところ、この質問はQ&A形式には適していません。回答は事実、参考文献、専門知識によって裏付けられると期待していますが、この質問は、討論、議論、投票、または拡張ディスカッションを求める可能性があります。この質問を改善でき、再開できると思われる場合は、ヘルプセンターにアクセスしてください。 7年前休業。 現在、C ++では「...」が最初のクラス演算子になりました。スピーチでは、どのように発音しますか? これまでに聞いたことがある: 点点々 三点 省略 関連:書面で...を省略記号で置き換えても大丈夫ですか?例:「省略記号演算子はパックを展開します」 編集(説明):句読点としての「...」が実際に省略と呼ばれていることは誰でも知っています。ただし、C ++のコンテキストでは、句読点の名前を発音しません。たとえば、「&」演算子は、コンテキストに応じて、「and」、「bitwise and」、「address of」、「logical and」(&&を使用する場合)、または「reference」として発音されます。「アンパサンド」と発音されることはほとんどありません。 スピーチでは「ドット・ドット・ドット」がよく使われている気がします。例:http : //channel9.msdn.com/Events/GoingNative/GoingNative-2012/Variadic-Templates-are-Funadic(可変テンプレートについての優れたプレゼンテーション)。 一方、「ドットドットドット」は発音しにくい(「d」と「t」はどちらも舌で発音します)。 「unpack」と発音できますか?
8 c++  c++11 

3
Sin関数をより速くより正確に計算する方法は?
を計算しますy(n)=32677Sin(45/1024•n)。yは整数で、n範囲は0〜2048です。このプロセスをより速く、より正確にするにはどうすればよいですか?以来:今、私はあなたの参照の答えを示したい Sin(a+b)=Sin(a)Cos(b)+Cos(a)Sin(b) とし Cos(a+b)=Cos(a)Cos(b)-Sin(a)Cos(b)。だから私は保存することができ Sin(45/1024•1)、そして Cos(45/1024•1)次の公式を使います: Sin(45/1024•2)=Sin(45/1024•1+45/1024•1)、 Cos(45/1024•2)=Cos(45/1024•1+45/1024•1)、 Sin(45/1024•n)=Sin(45/1024•(n-1)+45/1024•1)、 Cos(45/1024•n)=Cos(45/1024•(n-1)+45/1024•1)、この方法で多分速く大きな配列を格納せずに。
8 c++  algorithms 

5
個人のライブラリにどのように名前を付けますか?[閉まっている]
休業。この質問は意見に基づいています。現在、回答を受け付けていません。 この質問を改善してみませんか?この投稿を編集して、事実と引用で回答できるように質問を更新してください。 5年前休業。 私は物事に名前を付けるのがかなり苦手です。 私が一般的に思いつくことができる唯一の名前は「ヘルパー」です。たとえば、パスを操作するための支援関数を含むヘッダーファイルがある場合、それを「ヘルパー」ディレクトリ内に置き、「path-helper.hpp」などの名前を付ける傾向があります。 明らかに、それは悪い命名規則です。:) 自分のヘッダーとライブラリを常に参照するために使用できるフォルダー(および名前空間)に一貫した名前付けスキームを設定したいのですが、入力や覚えやすい名前(などboost)を見つけるのに問題があります...それらの一部を「ヘルパー」や「stdext」などと呼ぶことになってしまいますが、これは素晴らしいアイデアではありません。 覚えやすくタイプしやすく、一般的ではないライブラリの名前をどのようにして見つけますか(「ヘルパー」、「std」、「stdext」など)。 これを行う方法についての提案はありますか?

6
インタビューでCとC ++を混在させることはできますか?[閉まっている]
休業。この質問は意見に基づいています。現在、回答を受け付けていません。 この質問を改善してみませんか?この投稿を編集して、事実と引用で回答できるように質問を更新してください。 4年前休業。 インタビューでいくつかのコードを書き留めるように依頼された場合、C ++に完全に固執する必要がありますか、それとも、2つを「混合」して簡単なコードを書くことを頭に入れても問題ありませんか? 説明します。「スタック」データ型を作成するように求められた場合、C ++クラスが最適ですが、一部の文字列を解析する必要がある場合、strtok / sscanfはSTLよりもはるかに簡単です。一方、汎用のコンテナーが必要な場合は、STLとテンプレートが適しています。 すべてはCまたはC ++で実行できますが、インタビューではすべてをコーディングしたり、すべての標準/ STL関数を覚えたりすることはできません。許容できるトレードオフとは何ですか?
8 c++  interview  c 

9
テンプレートで解決できる問題を特定する方法に関するリソースはありますか?
テンプレートのメタプログラミングに関する知識を向上させることにしました。私は構文とルールを知っており、オンラインリソースの数え切れないほどの例で遊んでいます。 テンプレートがどれほど強力であり、コンパイル時間の最適化がどれだけ提供できるかを理解していますが、それでも「テンプレートを考える」ことはできません。特定の問題がテンプレートで最善に解決できるかどうか、そしてそれができるかどうか、私は自分で知ることができないようです。その問題をテンプレートに適応させる方法。 テンプレートを使用して最も適切に解決できる問題を特定する方法と、その問題をどのように適応させるかを教える、ある種のオンラインリソースまたは本はありますか?
8 c++  templates 

4
すでにクラスとインターフェースがあるのに、なぜ概念(総称プログラミング)が考案されたのですか?
また、stackoverflow.com: STLの概念が存在する必要があり、実際にそれらがドキュメント化された(人間の)概念のみであり、現時点でC ++コードに変換できなかった場合に、それらを「クラス」または「インターフェース」と呼ぶのはばかげていると私は理解しています。しかし、言語を拡張して概念に対応する機会を与えられたとき、なぜそれらは単にクラスの機能および/または導入されたインターフェースを変更しなかったのですか? 概念はインターフェース(データのない100%抽象クラス)と非常に似ていませんか?それを見ると、インターフェースには公理のサポートが不足しているように見えますが、公理はC ++のインターフェースに導入されている可能性があります(概念を引き継ぐためのC ++でのインターフェースの仮定の採用を考えると)。このようなC ++インターフェイス(自動インターフェイスLessThanComparable、だれでも)に自動コンセプトでさえ簡単に追加できると思います。 concept_mapは、Adapterパターンとよく似ていませんか?すべてのメソッドがインラインの場合、アダプタは基本的にコンパイル時を超えて存在しません。コンパイラーは、インターフェースへの呼び出しをインライン化されたバージョンに置き換えるだけで、実行時にターゲットオブジェクトを直接呼び出します。 静的オブジェクト指向プログラミングと呼ばれるものを聞いたことがあります。これは、本質的に汎用プログラミングでオブジェクト指向の概念を効果的に再利用し、実行オーバーヘッドを発生させることなくOOPのパワーのほとんどを使用できることを意味します。なぜこのアイデアはさらに検討されなかったのですか? これが十分に明確であることを願っています。私がそうでなかったと思うなら、私はこれを書き直すことができます。私に知らせて。

1
並列プログラミングライブラリ?(+いくつかの機能)
注:質問はスタックオーバーフローフォーラムには適さないと見なされており、ここに投稿する必要があったため、これは再投稿です。元のトピックはあります。 その作業を実現するために、マルチスレッド、並列処理、および現在利用可能なライブラリについてお話ししたいと思います。特に、この概念を実現するための使いやすいライブラリ(以下を参照)が既に存在するのか、それとも作成する必要があるのか​​、そしてそれがどれほど難しいのかについて疑問に思っています。 私が探しているライブラリの目的: エンジニアや高卒者だけでなく、ほとんどの開発者がアクセスできます(これは、開発者がそれを恐れずに使用したいことを意味します)。 C ++開発者が利用可能 ポータブル(Windows、Mac OS X、Linuxから始めて、モバイルデバイスに拡張) 軽量 使いやすい(アクセシビリティに関連) 私が探している最も重要な機能: タスクの並列処理 タスクのキャンセル(ソフトで突然の方法) タスクの依存関係 既存の関連ライブラリ: スレッドビルディングブロック:使用が非常に複雑で、制限のあるライセンス(GPL /商用)、これは私が見つけた唯一のライブラリで、探しているすべての機能が含まれています Grand Central Dispatch:現在移植性がなく、複雑すぎず、タスクのキャンセルなし(開始後)、タスクの依存関係なし、自動依存関係サポートなし(手動のみ) PFunc:Unixのみ、まだ少し複雑、タスクの依存関係なし、タスクのキャンセルなし Microsoft Task Parallel Library:MSプラットフォームと.NETのみ、ハードキャンセルなし、制限された手動のタスク依存関係(1つのタスクが他の複数のタスクを起動することはできません) OpenCL:現在、すべてのプラットフォームで使用できるわけではありません。GPU並列タスクライブラリほどではありません(希望するほど高レベルではありません)。 OpenMP:Visual Studioの無料バージョンを除いて広くサポートされており、タスクのキャンセルや自動タスクの依存関係はありません これらすべてについてどう思いますか?これらのニーズに対応するライブラリが少ないのはなぜだと思いますか?それとも私はいくつかの素晴らしい図書館を見逃しましたか?そして、それはそれを達成するにはあまりにも多くの仕事を意味すると思いますか?それとも十分に面白くないですか?私が書いた不足は、いくつかの検索で判明したものであり、私はこれらのライブラリの専門家ではありません。 このライブラリの最終的な目的は、たとえそれが夢であったとしても、シーケンシャルプログラミングで通常行うのと同じくらい簡単に並列化された方法でプログラミングすることです。 セイロ

8
C ++の美しいコードとは何ですか?なぜほとんどのプログラマーはそんなに気にかけているのですか?[閉まっている]
休業。この質問は意見に基づいています。現在、回答を受け付けていません。 この質問を改善してみませんか?この投稿を編集して、事実と引用で回答できるように質問を更新してください。 2年前休業。 ほとんどのプロジェクトはC ++ APIを使用しているため、APIの制約とプロジェクト自体の制約を扱います。 私はプログラミングの初心者ですが、OOPを使用するのは好きではありません。他のプログラマーが何らかの種類のデータ編成の一貫性を壊すのを防ぐためにプライベートスコープで制限することが非常に重要である理由を明確に誰も説明できなかったためです。 QtやOgre3Dのような素晴らしいものを作ることができるので、私はまだOOPで大丈夫ですが、それらはAPIであり、アプリケーションではなく、それらのコードは完璧である必要があり、誰も作業を批判できません。 ほとんどのプログラマーがAPIではなくアプリを作成しているため、なぜ天才的なコードを設計するような完璧なコードを作成し、これに時間を費やしたいのか、よくわかりません。

5
クロスプラットフォームのC ++ GUIライブラリを選択する場合、何を探す必要がありますか?
学習C ++プログラマーとして、自分のプロジェクト用のGUIフレームワークまたはライブラリーを選択しようとしています。 私はQtについてある程度の経験があります。それは非常に単純で、非常に優れたドキュメントがあり、多くのツールを提供しますが、標準ライブラリの多くを複製しているようです。 すべてのC ++ GUIライブラリはこのようなものですか?GUIライブラリでは何を探す必要がありますか?特定の問題が与えられた場合にどの方法が最適かをどのように判断しますか 特定の1つのライブラリに焦点を当てるべきですか、それともそれらが異なる目的に役立つ可能性があるので、それらのいくつかを知っておく価値はありますか?

4
最新のC ++スタイルで記述されたコードの「Pythonic」に相当する用語は?[閉まっている]
休業。この質問は意見に基づいています。現在、回答を受け付けていません。 この質問を改善してみませんか?この投稿を編集して、事実と引用で回答できるように質問を更新してください。 6年前休業。 最近のC ++では、多くの優れたイディオムが推奨されています。これらには、RAIIと、ブーストまたはSTLのエレガントな使用、またはstd::algorithm特定の問題を解決するためのaが含まれます。 Cを任意の言語で記述できるように、CをC ++で記述できます。ただし、機能の適切なサブセットを使用して、非常に優れた最新のC ++コードを作成できます。誰かがSTLやboost構造で本当にクールなことをするとき、私はいつもそれを何かをするための正統なエレガントな方法という意味で「pythonic」と呼ぶ衝動に駆られます。現代のイディオムで現代的なスタイルで書かれたC ++コードを指すために、Pythonで「pythonic」がどのように使用されているかなどの用語はありますか?

8
C ++フレンドクラスを使用するユースケースは何ですか?
C ++の友達を理解しようとしています。友だちを使う良いユースケースはいつですか?別のクラスが別のクラスの属性にアクセスできるようにしたいのであれば、それを単にパブリックとして作成するか、代わりにそのクラスから継承しないのですか? ご協力ありがとうございました。
8 c++ 


3
Cおよびオブジェクト指向プログラミングに既に精通しているプログラマー向けの詳細なC ++ブック?[閉まっている]
現在のところ、この質問はQ&A形式には適していません。回答は事実、参考文献、専門知識によって裏付けられると期待していますが、この質問は、討論、議論、投票、または拡張ディスカッションを求める可能性があります。この質問を改善でき、再開できると思われる場合は、ヘルプセンターにアクセスしてください。 8年前に閉鎖。 C、Java、Pythonを含むいくつかの言語を(ある程度)知っています。私はScalaとSchemeにも(ある程度)精通しており、さらにx86アセンブリを読み取る(書き込むことはできない)ことができます。私がC ++を学びたいとしましょう。クラスが何であるかを教えようとせず、継承、ポリモーフィズム、または疎結合クラスをもう一度教えようともせず、C ++言語だけで他の基本を教えようとはしません(良い本です)(だけでなく、慣用的な C ++コード(たとえば、C ++構文のJavaではない)とその標準ライブラリの書き方は? 注:タイトルで使用されている「詳細」は、100ページでC ++をカバーすることを意図していないことを意味します。言語の詳細を知りたいのですが。もちろん、習得は練習から生まれますが、本からC ++を少しだけ学びたいのではなく、徹底的に学びます。
8 learning  c++  books 

6
C ++について知っておくべきことは何ですか?[閉まっている]
休業。この質問には、より焦点を当てる必要があります。現在、回答を受け付けていません。 この質問を改善してみませんか?質問を更新して、この投稿を編集するだけで1つの問題に焦点を当てます。 4年前休業。 私は最近C ++の学習を始めましたが、とても楽しんでいます。 私はよく、多くの言語よりもC ++で悪いコードを書く方が簡単で、見た目よりもはるかに深いことを読んだことがあります。 悪いコードを書かないようにしたいので、C ++で良いコードを書くために、私が何をしてはいけないのか、何をすべきなのかを考えていました。
8 c++ 

3
型推論の文体上の合理的な制限は何ですか?
C ++ 0xには、かなり包括的な包括的推論のサポートが追加されています。不必要な繰り返しを避けるために、可能な限りあらゆる場所で使用したいと思っていますが、あちこちで明示的な型情報を削除するのが良い考えかどうか疑問に思っています。このかなり不自然な例を考えてみましょう: Foo.h: #include <set> class Foo { private: static std::set<Foo*> instances; public: Foo(); ~Foo(); // What does it return? Who cares! Just forward it! static decltype(instances.begin()) begin() { return instances.begin(); } static decltype(instances.end()) end() { return instances.end(); } }; Foo.cpp: #include <Foo.h> #include <Bar.h> // The type need …

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.