問題タブ [glibmm]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - Glib::RefPtr の変換またはキャストGtk::Widget に & 必要
Widget から派生した T を使用して、Glib::RefPtr を GtkWidget に変換するのに問題があります。
これはコンパイルされません:
g++ (Ubuntu/Linaro 4.6.3-1ubuntu5) 4.6.3 Copyright (C) 2011 Free Software Foundation, Inc. これはフリー ソフトウェアです。条件のコピーについてはソースを参照してください。保証はありません。商品性や特定の目的への適合性のためでさえありません。
Glib::RefPtr はスマート ポインターであり、DrawingAreaは Widget から派生しているため、これは機能するはずです。
逆参照 ( などf.put(*rp_mp,...)
) は意図的に機能していません。ドキュメントには次のように記載されています。
SmartPtrからWidget&を取得するにはどうすればよいですか?
c++ - 準拠しようとすると g_list_append でエラーが発生する
OS = Linux (Fuduntu 2013.2)
プログラムで GList を使用しようとしていますが、g_list_append を呼び出すと、このエラーが発生します
これは、g_list_append を含むコード ウィッチの一部です。
でコンパイル
c++ - gtkmm ヘッダーの競合する宣言
すべてを捨てて、最初からやり直さなければならないと思い始めています。codeblocks コンパイラ設定で GTK と gtkmm からライブラリを手動で追加してきましたが、最終的に欠落しているヘッダー以外のものが表示されると、これが表示されます。
これを解決する方法についてのアイデアはありますか? また、これらのライブラリをライブラリの標準パスに追加する方法に関するヒントはありますか? すべてのプロジェクトでこれを手動で行うのは非常に面倒です。
c++ - Ustringエラー(印刷時)
UTF-8 ファイルを ustring に解析したいので、このファイルを str で読み取ります。エラーがあります: 'Glib::ConvertError' のインスタンスをスローした後に終了が呼び出されました。私は何をすべきか?
ubuntu-12.04 - Ubuntu 12.04 の glibmmconfig.h はどこにありますか
私は持っていてsudo apt-get install glibmm*
、それに関するすべてのライブラリをインストールしたことを示しています。しかし、 とリンクするとlibxml++-2.6
、 no と表示されますglibmmconfig.h
。Google で検索しました。誰かが にあると言ってい/usr/lib/glibmm-2.4/include
ますが、パスが存在しません。どうしたの?
c++ - DBUS コードをデーモン プロセス内に配置するとクラッシュするが、独立したスタンドアロンの main() 関数ではデーモン コードなしで正常に実行される
Ubuntu で次のコードを実行しました。DBUS コードは、処理中にデーモン内に配置するとクラッシュしますが、デーモン ブロイラー プレート コード構造を使用せずに、独立したスタンドアロンの main() 関数で正常に実行されます。注: 問題が解決したら、後でクラス構造のコードをリファクタリングします。
次のコードはクラッシュします。
ただし、以下は正常に動作します
c++ - スレッドから安全にシグナルを発し、それをウィジェットに接続する
私は Gtkmm とマルチスレッドを使用しています。
クラス「NetworkWorker」doigがセカンダリスレッドでネットワークを詰め込んでいます。このクラスでは、クラス「MainWindow」によって処理される多くのシグナルを作成したいと考えています。
これらのシグナルを処理するメソッドは、TextView で追加テキストを編集します。
次のコードがあります。
NetworkWorker.h
NetworkWorker.c
MainWindow.h
MainWindow.c
そして私のmain.cpp
これらのスニペットは、この質問に合わせて再調整されているため、一部の変更が一貫していない可能性があります。
このコードを実行すると、次の出力が得られます。
この問題を解決するのを手伝ってくれる人はいますか? :)
c++ - Glibmm アプリケーションがオペレーティング システムのシグナルをキャッチ
Glibmm を使用して最初のアプリケーションを作成しようとしていますが、SIGINT などのオペレーティング システム シグナルに接続して処理する方法について混乱しています。Glibにはこれを行う方法があるように見えるので、それは可能だと思います。この機能を取得するには、Glib ハンドラー用に独自の C++ ラッパーを作成する必要がありますか?それとも、既に提供されているより良い方法がありますか? これに関するヘルプは大歓迎です。
ありがとう!
c++ - オブジェクトから作成された glibmm スレッドがまだ実行されている間にオブジェクトが破棄されるとどうなりますか?
次のシナリオを考えてみましょう: classA
があり、構築時に (オブジェクトを as として呼び出しますobjA
)、メンバー関数run()
を glibmm スレッドとして実行します。objA.run()
集中的な処理を行っており、IO を待機しているシステム コールでブロックされることさえあります。これで、オブジェクトobjA
はメイン スレッドで破棄されます。今、何が起きた?動作は未定義ですか?
c++ - glibmm 2.4 変換入力の無効なバイト シーケンス
Glibmm-2.4 を使用して中国語を出力しようとすると、「変換入力で無効なバイト シーケンス」が返されます。
私がここで間違っていることは何か分かりますか? Ubuntu 14.04.2 i386 LTS、g++、glibmm-2.4 の使用