[過去ログ] GTK+プログラミング (1002レス)
1-

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
322: 2009/11/07(土)19:56 ID:nXIVDau4(1/2) AAS
型がなんでgintやgcharなの?
intやcharではダメなわけ?

C言語とのこういうちょっとした違いは
他にもいろいろあるの?
323: 2009/11/07(土)20:43 ID:P9pTNgo8(1) AAS
> 型がなんでgintやgcharなの?
移植しやすくする為の措置じゃなかったっけか
324
(1): 2009/11/07(土)21:04 ID:nXIVDau4(2/2) AAS
「g」が付いてるほうが移植性が高いのかねぇ。

みんなはそういうのをどうやって覚えたの?
解説本とかあまり売ってないみたいだけど…。
325
(1): 2009/11/07(土)21:25 ID:NL8bJnRF(1) AAS
>>nXIVDau4
たとえばlongが64bitの環境でも、glong的に32bitであってほしい場合にlongの代わりにintやint32をtypedefするとかな。
データ構造の隠ぺいとかはWeb上の先人の残した情報だったり、技術書立ち読みだったり、Win32やNSPRとか同じことやってる実例を見たりとかで知ったよ。
326
(1): 2009/11/07(土)22:58 ID:FPX1oLqZ(1) AAS
>>324
C言語はintとかの定義に幅があるから
コンパイラが違えばintのサイズも異なったりするので
厳密に定義した独自のintを用意するわけですよ

先月出た本はどうでしょう
外部リンク:www.amazon.co.jp
327: 2009/11/07(土)23:54 ID:Iq2jGS9i(1) AAS
gint32、とかにした方が判りやすいのに
328: 2009/11/08(日)03:02 ID:A1QtHV1W(1/2) AAS
>>325-326
なるほど、なんとなくわかった。
ありがと。チュ!

本は今度本屋で見てみる。
329
(3): 2009/11/08(日)22:19 ID:A1QtHV1W(2/2) AAS
GTK+をこれからやろうと思ってますが、C++よりC言語のほうがいいんでしょうか?
昔CもC++も少しずつかじりましたが、どっちも中途半端に終わって、今は頭の中でゴッチャになってます。
GTK+を始めるこの機会にどちらかをちゃんと勉強するつもりですが、どっちがいいか迷ってます。

CよりC++のほうが言語として優れていたり、C++を覚えたほうが何か有利だったりするんですかねぇ?
gtkmmというのを使えばC++でもいけるんですよね?
何かアドバイスをもらえればうれしいです。
330
(1): 2009/11/08(日)22:48 ID:iZONJSh7(1) AAS
>>329
有利かどうかでいえば、一山いくらのプログラマとしても仕事に付けるかという観点ではC++/Java/PHP/VBあたりだろうな。
有利不利なんぞを気にするんなら間違ってもWindowsかWebアプリ、携帯以外見向きもしないほうがいい。GTK+なんかもってのほかだ。

マジレスするなら、C++にあまり慣れてないならCでGTK+やるのがいい。
ついでにPythonあたりも齧っとけばC+GTK+で面倒な部分もこなせるし、Linux方面のプログラムを開発するのに不自由はしないだろう。
331
(1): 2009/11/08(日)23:24 ID:3wmSljPh(1) AAS
>>329
Cはスーパーマクロアセンブラ、C++になって高級言語の仲間入りっつー感じかな。
ある程度規模の大きなプログラム作るんなら、絶対C++の方が有利。
Cははっきり言って時代遅れ。C++は習得しておいた方がいいよ。
組み込み系なんかだと、また話は変わってくると思うが。

GUIツールキットだって、殆どのものがC++を念頭に置いて作られてる。
Cが標準でC++ラッパーを後付けしたのはGTK+くらいなもの。
まぁ、それだけ歴史が古く、練り上げられてるとも言えると思うけど。
332
(1): 2009/11/09(月)00:10 ID:xrkj026G(1/2) AAS
>>330-331
どうも!
「C++に慣れてないなら」っていうのはオブジェクト指向が壁になるかもしれないってことですかねぇ。
一応JavaやPHPもちょこちょこやってるので、理解はしてます。

お二人の意見を合わせると、C++のほうがいいけど、慣れてなかったり自信がなかったりする場合は
Cにしておくのが無難ってとこですね。

もうちょっと考えてみます。
とても参考になりましたー!
333
(2): 2009/11/09(月)00:31 ID:GPAwpvGp(1) AAS
>>332
オブジェクト指向が壁になるからではないよ。ほぼ1からC++とGTK+(とgtkmmの固有事情)やるよりはCとGTK+のほうが楽かなとね。
一応gtkmm以外にもJavaとPHP向けのバインディングがあるから、Cでやるのが面倒なようならそれぞれJava-Gnome/PHP-GTKで調べてみるといい。
334
(3): 2009/11/09(月)01:09 ID:GiNGaxO1(1) AAS
gtkmmの固有事情くわしく

これから始めようと思ってるんだけど
>>132 >>318とか見ると気になる
335
(1): 329 2009/11/09(月)01:13 ID:xrkj026G(2/2) AAS
>>333
Cのほうがやっぱ楽なんですか。
といいつつC++も捨てがたいけど、>>334さんと同じくgtkmmの固有事情が気になります。

JavaやPHPのやつも存在は知ってましたが、CかC++でアプリを作れるようになりたいなぁと思ってて…。
336: 2009/11/09(月)01:49 ID:9bGbNsmw(1) AAS
>>333 >>334

>>132 >>318の言ってることについては心当たりないが、GtkTreeIterだかのバインディングにメモリリークのバグがあるとかいうブログの記事を見たことがある。
固有事情とは言いすぎた。GObjectの仕組みに加えてC++のオブジェクトとの絡みで素のGTK+より覚えることが多くなるかなと思った故の発言だ。

>>334
C/C++ともほぼ未経験なら日本語ドキュメントや和書もある素のGTK+のほうが理解しやすいのではと思ってC+GTKを勧めたが、単純にGTK+のウイジェットを使ってウィンドウアプリケーションを作るならgtkmmのほうが楽なはずだ。
素のGTK+をCで使用する場合、頻繁に型キャストのマクロを使うし、新たなウィジェットを作成する際にはGObjectの動的型システムを素で使うことになるからその点面倒だ。
gtkmmであればその点いくらか楽ができる。だが、ほかの言語バインディングでも使えるウィジェットを作成するとなると素のGTK+の動的型システムの流儀も触れる必要があるから、C++の知識に加えてGObjectの仕組みも知る必要がでてくる。

Javaをある程度使えて、GObjectの動的型システムには触れずにウィンドウアプリケーションを作りたいということであれば改めてgtkmmのほうを
337
(1): 2009/11/09(月)09:55 ID:H/aMIY+I(1) AAS
わざわざPerlで扱ってる変態もいるしな
338: 2009/11/09(月)10:14 ID:LeSNQMah(1) AAS
>>335
俺は Python でやってる。
C を使っている gtk+ プロジェクトだったら C で書く。
そんなに違いはないし、簡単。

Cだとヘッダーにいちいちプロトタイプ宣言しなければならなかったり
毎回コンパイルしなければならないのが面倒だからPython使ってる。
楽チン。
339: 2009/11/09(月)15:19 ID:dkYv1Xb9(1) AAS
>>337
ぇー最近perlでGTK触りはじめたけど、変態じゃないやい><
340: 2009/11/09(月)15:40 ID:nWvFWYHF(1) AAS
とにかく完成するのが目的なら自分の好きな言語でいいじゃん。おれはRubyだぜ。
341: 2009/11/09(月)18:21 ID:EMO5BJHN(1) AAS
GTK+はバインディングが多いのがいいよね
1-
あと 661 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.803s*