• [解決済み] C++でstd::functionと関数ポインタのどちらを使うべきですか?

    質問 C++でコールバック関数を実装する場合、Cスタイルの関数ポインタを使用した方が良いですか? void (*callbackFunc)(int); それともstd::functionを利用した方がいいのでしょうか。 std::function< void(int) > callbackFunc; 解決方法は? 要するに std::function

    2022-04-23 16:57:40
  • [解決済み] void_t` の仕組み

    質問 Cppcon14でWalter Brownのモダンなテンプレートプログラミングについての講演を見ました( 第一部 , 第二部 を発表しました。 void_t SFINAEテクニック 例 と評価される単純な変数テンプレートがあるとします。 void もし全てのテンプレート引数が正しく形成されていれば template< class ... > usi

    2022-04-23 16:53:44
  • [解決済み] cinとcoutをファイルにリダイレクトするには?

    質問 をリダイレクトするにはどうすればよいですか? cin から in.txt と cout から out.txt ? 解決方法は? 以下は、あなたがやりたいことを実現するための実例です。コメントを読めば、コードの各行が何をするのかが分かります。gcc 4.6.1のPCでテストしましたが、問題なく動作しました。 #include <iostream> #in

    2022-04-23 15:20:27
  • [解決済み] このおかしなC++11の構文==> struct : bar {} foo {}; は何ですか?

    質問 C++11ではどのような意味があるのでしょうか? struct : bar {} foo {}; 解決方法は? まず、標準的な抽象的UDT(User-Defined Type:ユーザー定義型)を取り上げます。 struct foo { virtual void f() = 0; }; // normal abstract type foo obj; // error: c

    2022-04-23 13:32:52
  • [解決済み] サブクラスへのポインタのdeleteは、ベースクラスのデストラクタを呼び出しますか?

    質問 私は class A そのフィールドの1つにヒープメモリアロケーションを使用します。クラス A はインスタンス化され、別のクラス ( class B . クラスBのオブジェクトを使い終わったら delete デストラクタを呼び出すのでしょう。しかし、これはクラスAのデストラクタも呼び出すのでしょうか? 編集する 回答からすると、そうなりますね(間違っていたら編集してく

    2022-04-23 13:08:49
  • [解決済み] Java の toString に相当する C++?

    質問 ストリームに書き込まれる内容を制御したい、つまり cout カスタムクラスのオブジェクトのために。C++でそれは可能でしょうか?Javaでは toString() メソッドで同様のことができます。 どのように解決するのですか? C++では、オーバーロードすることができます。 operator<< に対して ostream とカスタムクラスで構成されます。

    2022-04-23 13:01:33
  • [解決済み] 名前空間内のクラスをダブルコロンで順次宣言できないのはなぜですか?

    質問 class Namespace::Class; なぜ、こんなことをしなければならないのか。 namespace Namespace { class Class; } VC++ 8.0を使用すると、コンパイラの問題が発生します。 エラー C2653: 'Namespace' : はクラス名または名前空間名ではありません。 この問題はコンパイラが Name

    2022-04-23 12:44:46
  • [解決済み] 静的メンバ関数のエラー、正しいシグネチャの書き方は?

    質問 g++で現在の署名を使用してコードをコンパイルしようとするとエラーが発生します。 cannot declare member function static void Foo::Bar(std::ostream&, const Foo::Node*) to have static linkage 質問は2つあります。 なぜこの方法ではコンパイルできないのですか?

    2022-04-23 11:33:47
  • [解決済み] C++では、私は食べていないものにお金を払っているのでしょうか?

    質問 次のようなCとC++によるhello worldの例について考えてみましょう。 main.c #include <stdio.h> int main() { printf("Hello world\n"); return 0; } main.cpp #include <iostream> int main() {

    2022-04-23 11:03:47
  • [解決済み] C++のデリゲートとは何ですか?

    質問 C++におけるデリゲートの一般的な考え方は?それらは何であり、どのように使用され、何のために使用されるのでしょうか? まずは「ブラックボックス」的に勉強したいのですが、こういうもののガッツリした情報も少しあれば嬉しいです。 これは、最も純粋でクリーンなC++ではありませんが、私が働いているコードベースには、これらが豊富にあることに気づきました。私は、それらを十分に理解し、それら

    2022-04-23 09:30:55
  • [解決済み] C++のクラスでメンバ変数に接頭辞を使用する理由

    質問 C++のコードの多くは、メンバ変数をマークアップするための構文上の規約を使用しています。一般的な例としては、以下のようなものがあります。 m_ メンバー名 パブリックメンバの場合 (パブリックメンバが使用される場合) メンバー名 プライベートメンバーまたは全メンバーの場合 また、this-&gt.を使って強制しようとする人もいます。 メンバー メンバ

    2022-04-23 07:57:05
  • [解決済み] C++のdynamic_castとstatic_cast

    質問 について、かなり混乱しています。 dynamic_cast というキーワードを C++ で使用することができます。 struct A { virtual void f() { } }; struct B : public A { }; struct C { }; void f () { A a; B b; A* ap = &b;

    2022-04-23 07:39:14
  • [解決済み] ツールボックスに入れるべきモダンなC++ライブラリは何ですか?[クローズド]

    質問 閉店しました。 この質問は、以下を満たしていません。 Stack Overflowガイドライン . 現在、回答は受け付けておりません。 <パス この質問を改善したいですか? 質問を更新して、それが オントピック Stack Over

    2022-04-23 07:21:19
  • [解決済み] c++でnewせずにコンストラクタを呼び出す

    質問 C++でオブジェクトを作成する際、よくあるのが Thing myThing("asdf"); この代わりに Thing myThing = Thing("asdf"); これは、少なくともテンプレートがない限り、(gccを使用して)動作するようです。私の質問は、最初の行が正しいかどうか、正しい場合はそれを使用する必要があるかどうかです。 どのように解決するのですか?

    2022-04-23 06:43:43
  • [解決済み] C++における純粋仮想デストラクタ

    質問 と書いてはいけないのでしょうか? class A { public: virtual ~A() = 0; }; 抽象的な基底クラスのために? 少なくともMSVCではそれでコンパイルできるのですが......。実行時にクラッシュしませんか? 解決方法は? デストラクタの実装も必要です。 class A { public: virtual ~A() =

    2022-04-23 06:04:34
  • [解決済み] C++で抽象クラスに対して仮想デストラクタを宣言する理由は何ですか?

    質問 C++でベースクラスに対して仮想デストラクタを宣言するのは良い習慣だと思いますが、常に virtual デストラクタは、インターフェイスとして機能する抽象クラスであっても有効ですか?その理由と例を教えてください。 解決方法は? インターフェイスの場合はさらに重要です。あなたのクラスのユーザは、おそらく具象実装へのポインタではなく、インターフェイスへのポインタを保持することに

    2022-04-23 05:04:39
  • [解決済み] C++でポインタを参照にキャスト/変換する方法

    質問 ポインタを渡すにはどうすればよいのでしょうか( Object *ob をプロトタイプとする関数に渡すことができます。 void foo(Object &amp;) ? 解決方法は? このように呼びます。 foo(*ob); 質問のタイトルにあるように、ここではキャスティングは行われていないことに注意してください。私たちが行ったのは、オブジェクトへのポインタの参照を解除

    2022-04-23 04:33:12
  • [解決済み] Visual StudioでC++17のコンパイルを有効にする方法は?

    質問 C++17の機能を使いたいのですが、どうすればいいですか? Microsoft Visual Studioで、コンパイルをC++14からC++17に切り替えるにはどうすればよいですか? それとも、VSのリリースバージョンでは利用できないのでしょうか? 解決方法は? C++17を具体的に選択できるドロップダウンが(少なくともVS 2017.3.5以降)追加されました。利用

    2022-04-23 02:20:17
  • [解決済み] 複数のC++文字列を1行に連結するにはどうすればよいですか?

    質問 C#には、多くのデータ型を1行にまとめて連結できる構文がある。 string s = new String(); s += "Hello world, " + myInt + niceToSeeYouString; s += someChar1 + interestingDecimal + someChar2; C++でこれに相当するものは何でしょうか?私が見る限り、+演算子に

    2022-04-23 01:57:05
  • [解決済み] なぜC++では純粋仮想デストラクタが必要なのでしょうか?

    質問 仮想デストラクタの必要性は理解しています。しかし、なぜ 純粋 仮想デストラクタ?あるC++の記事で、著者はクラスを抽象化したいときにpure virtual destructorを使うと述べています。 しかし、メンバー関数のいずれかを pure virtual にすることで、クラスを抽象化することができます。 そこで質問なのですが デストラクタを本当に純粋な

    2022-04-23 01:15:50