C/C++のライブラリ総合スレ

0001デフォルトの名無しさん2011/08/10(水) 01:12:07.87
便利で役立つライブラリを総合的に扱うスレがないので立てました

便利なライブラリをここに挙げてみたり
やりたい事を実現できるライブラリを聞いてみたり
ライブラリに関する雑談をするスレです
0002デフォルトの名無しさん2011/08/10(水) 02:12:23.87
Boost
http://www.boost.org/

AMD Accelerated Parallel Processing (APP) SDK
http://developer.amd.com/sdks/AMDAPPSDK/Pages/default.aspx

TinyXML
http://www.grinninglizard.com/tinyxml/

ACE
http://www.cs.wustl.edu/~schmidt/ACE.html

libcurl
http://curl.haxx.se/libcurl/

loki
http://sourceforge.net/projects/loki-lib/

Win32++
http://win32-framework.sourceforge.net/

DXライブラリ
http://homepage2.nifty.com/natupaji/DxLib/

せっかくだからとりあえず挙げてみた
前々からあったらいいなとは思ってたけど

みんなは自分の環境で何のライブラリを標準的に使ってる?
0003デフォルトの名無しさん2011/08/10(水) 16:30:05.94
C++で ソケットクラスのあるライブラリで
もうこれ標準だろレベルのデファクトのは
ありますか?
0004デフォルトの名無しさん2011/08/10(水) 18:27:07.63
boost::asio
0005デフォルトの名無しさん2011/08/11(木) 15:52:29.88
>>4
それだけはナイわ・・・
0006デフォルトの名無しさん2011/08/11(木) 21:53:10.67
ACEとかもいいよ
0007デフォルトの名無しさん2011/08/17(水) 14:19:27.91
boostってそんなに便利か?
0008デフォルトの名無しさん2011/08/17(水) 18:15:19.82
超便利
でもコンパイル時間が増える
0009片山博文MZ2011/08/25(木) 13:20:13.05
0010デフォルトの名無しさん2011/08/26(金) 11:58:13.78
APNG patch for libpng
ttp://sourceforge.net/projects/libpng-apng/
0011 忍法帖【Lv=29,xxxPT】 2011/08/26(金) 12:23:38.26
wxWidget
0012デフォルトの名無しさん2011/08/26(金) 12:24:49.48
wxWidgets
0013デフォルトの名無しさん2011/08/28(日) 23:57:27.19
P-Stade C++ Library
http://p-stade.sourceforge.net/
この中のOvenは趣味全開のときに使う。Boost.Rangeをめっちゃ強化するライブラリ。
0014デフォルトの名無しさん2011/09/02(金) 01:25:51.47
P-Stade C++ Library
http://p-stade.sourceforge.net/
http://sourceforge.net/projects/p-stade/

上のリンクからはダウンロードできないw
0015デフォルトの名無しさん2011/10/15(土) 09:08:09.69
SmartWin

smartwin-2.0.0_RC1-gcc3.4-2av.DevPak (拡張子がDevPak)
devcpp-4.9.9.2_setup.exe
の組合せ(gcc 3.4.2になります)
C:\Dev-Cpp>gcc --version
gcc (GCC) 3.4.2 (mingw-special)
Copyright (C) 2004 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.


まず、MinGWがすでにインストールされていれば、アンインストールしておく。
次に、C:\Dev-Cppに、Dev-C++をインストールして、
DevPakをPackman.exeのアイコンにドラッグアンドドロップする(DevPakをダブルクリックでもできるとおもう)
0016デフォルトの名無しさん2011/10/15(土) 10:33:35.59
gccは、C:\Dev-Cpp\binにある
0017デフォルトの名無しさん2011/10/15(土) 16:37:07.83
レンダリングエンジンOgre
http://www.ogre3d.org/
0018デフォルトの名無しさん2011/12/12(月) 18:02:20.58
保守
0019片山博文MZ ◆0lBZNi.Q7evd 2011/12/15(木) 11:28:40.64
HTML Tidy
0020デフォルトの名無しさん2011/12/15(木) 17:33:57.74
STLsoftまじ便利
ただしSTLに慣れている者に限る
http://www.stlsoft.org/
0021デフォルトの名無しさん2012/01/10(火) 11:23:59.09
だれかがIteratorで使用中でも追加削除が出来る配列がほしい
0022デフォルトの名無しさん2012/01/10(火) 12:20:02.17
できるじゃん
0023デフォルトの名無しさん2012/01/10(火) 14:14:18.29
>>22
使用中であれば破綻してしまう操作を「できる」とは言わないだろ
0024デフォルトの名無しさん2012/01/10(火) 17:57:38.76
vector<int>::iterator it = array.begin();
while(it != array.end()) {
it = array.erase(it);
}
これじゃ駄目なのか?
0025デフォルトの名無しさん2012/01/10(火) 19:19:55.70
文脈的にスマポ的なイテレータの話をしてると思ったんだが
0026デフォルトの名無しさん2012/01/10(火) 23:31:53.92
>>24
そのコードの前に
vector<int>::iterator it1=array.begin();
とやっててerase後にit1にアクセスするとかって話だろ
0027デフォルトの名無しさん2012/01/10(火) 23:35:39.36
てか参照カウンタで解放をコントロールするコンテナつくればいいしゃん
そんなに難しくはないだろ
0028デフォルトの名無しさん2012/01/10(火) 23:54:57.21
そういったrobust iteratorを使いたいときは、間違いなくそれ用に作られたcontainerが必要。
0029デフォルトの名無しさん2012/01/11(水) 00:00:10.78
>>27
ツリーやリストでそれをやると悲劇
単純に前後要素のiteratorも抱えた新しいiteratorをでっち上げるがいい
0030デフォルトの名無しさん2012/01/11(水) 05:47:37.82
イテレータ自体が一時リストへのリファレンスを持って
その一時リストは参照カウントで、begin、endなんかで毎度生成
って事?
0031デフォルトの名無しさん2012/01/11(水) 11:07:11.37
少なくともerase呼んだ瞬間に、要素のデストラクタは動くべき
0032片山博文MZ ◆0lBZNi.Q7evd 2012/01/11(水) 11:41:01.84
QHTM
0033デフォルトの名無しさん2012/01/11(水) 14:37:30.35
>>31
それを避けたい
0034デフォルトの名無しさん2012/01/11(水) 15:03:53.14
OpenFrameworks
http://www.openframeworks.cc/
MITライセンス

Cinder
http://libcinder.org/
Simplified BSD Licens

Little CMS
http://www.littlecms.com/
MIT LICENSE
0035デフォルトの名無しさん2012/01/11(水) 16:45:05.46
>>33
それはおかしな話だな。
erase後にsize()が減るかどうかは他のiteratorに捕まれてるかどうかに依存するということになる。
erase後に ++iter が使えればいいんだろう?
erase後に *iter まで使える必要はないはず。
0036デフォルトの名無しさん2012/01/11(水) 19:37:58.83
ループ時に内部でコピーしてくれてもいい
0037デフォルトの名無しさん2012/01/11(水) 19:38:24.53
いや、やっぱりだめだ
0038デフォルトの名無しさん2012/01/11(水) 21:12:32.52
Cygwin (1.7系)で、標準のBoost(1.46)を入れて、
コンパイル時に-lboost-system-mtをつけてるのだが、

undefined reference to boost::system::get_generic_category

がでる。何がおかしいのかな
0039デフォルトの名無しさん2012/01/12(木) 01:23:55.10
そういうのはBoost総合スレで聞いた方がいいだろ
0040デフォルトの名無しさん2012/01/13(金) 18:33:11.01
ソースも貼らずにry
0041デフォルトの名無しさん2012/01/17(火) 05:11:53.19
最近こういうの全然追ってないんだけど
任意のデータ構造(なければ特定の)に使える
パタ−ンマッチのライブラリってないかな
0042デフォルトの名無しさん2012/01/17(火) 08:29:18.38
>>41
C#のlinqみたいなことがやりたいってこと?
0043デフォルトの名無しさん2012/01/30(月) 00:13:25.56
0044デフォルトの名無しさん2012/02/02(木) 15:36:06.61
Kinect for Windows SDK とOpenCV でC++使って
検出した骨格の座標データをファイルに保存するプログラム教えて欲しい〜
0045デフォルトの名無しさん2012/02/02(木) 15:55:13.06
骨格の座標とるのは簡単なんだからファイル保存だけじゃないの?
Kinectとかやる前にCの勉強したほうがいいよ
0046デフォルトの名無しさん2012/02/26(日) 13:33:14.16
fox-1.6.44.zip (STABLE)

FOX is a C++ based Toolkit for developing Graphical User Interfaces easily and
effectively.
http://www.fox-toolkit.org/
0047デフォルトの名無しさん2012/03/14(水) 14:13:30.93
C++のライブラリを混て使うと、
クラスやメソッドの命名規則が一貫していないところが欝だな〜
0048デフォルトの名無しさん2012/03/15(木) 16:11:24.88
ここで質問すべきなのか微妙ですが・・・

ライブラリをビルドする際のDebugやReleaseといった指定について、Debugビルドする際にはやはりDebugビルドしたライブラリを使用すべきなのでしょうか?
0049デフォルトの名無しさん2012/03/16(金) 01:51:59.79
>>48
デバッグビルドしたい、ってことはデバッグしたい、ってことなんだから
それならライブラリもデバッグビルド版使った方がいい気はする
0050デフォルトの名無しさん2012/03/16(金) 07:42:25.53
winならそもそも標準ライブラリの設定が一緒になってないとリンク通らんけどな
0051デフォルトの名無しさん2012/03/19(月) 21:20:51.57
CppCMS ? C++ Web Development Framework
http://cppcms.com/
LGPLv3
0052デフォルトの名無しさん2012/03/23(金) 02:28:27.22
>>26

eraseの戻り値のiteを使えよ。それかite++をeraseに渡す。
コンテナはshared_ptrが最強なのでリストのなかに入れるオブジェクトはすべてshared_ptrにする。


これで寿命管理から開放される上に、ありとあらゆる任意の箇所から参照保持削除できるようになります。
0053デフォルトの名無しさん2012/03/23(金) 23:47:55.77
eraseの戻り値なんか使うなよ・・・
0054デフォルトの名無しさん2012/03/24(土) 01:09:42.62
え、じゃあ、なんでiteの次が戻ってるんだよ
0055デフォルトの名無しさん2012/03/24(土) 10:47:18.09
vcの拡張機能。標準仕様では戻りはvoid
0056デフォルトの名無しさん2012/03/24(土) 20:38:35.06
C++11ではイテレータ返すから
0057デフォルトの名無しさん2012/03/24(土) 23:33:40.51
STLのlistのeraseの戻り値は標準機能じゃないのか。ARMCでもとおってるが。

それ以外ではite++を渡してる
0058デフォルトの名無しさん2012/03/25(日) 00:51:10.43
listとvectorじゃちがうんじゃね?
0059デフォルトの名無しさん2012/03/25(日) 01:02:22.00
0060デフォルトの名無しさん2012/03/25(日) 01:19:06.81
C++11でも、モノによってはeraseするとiteがぶっ壊れるな。
0061デフォルトの名無しさん2012/03/25(日) 01:19:50.27
>>59
listの話なんかしてねーよタコ
0062デフォルトの名無しさん2012/03/26(月) 03:17:28.58
ite++をeraseに渡せばいいんじゃね?
0063営利利用に関するLR審議中@詳細は自治スレへ2012/03/29(木) 16:36:53.55
Linux上のgccでVisual Studio用のバイナリってビルド出来る?
>>63
VisualStudio用のバイナリというものは存在しないけど
Windowsで動作するバイナリはコンパイル可能です
0065632012/03/30(金) 01:17:15.76
表現が全く不適切だった。改めて。

gccで、VC++のリンカで使えるスタティックリンクライブラリはビルド出来る?
>>65
やったこともないし出来る保障も無いけど
理屈の上では出来る
0067片山博文MZボット ◆0lBZNi.Q7evd 2012/04/02(月) 14:29:07.76
リモートURLの絶対パスと相対パスが与えられて、
絶対パスから相対パスをたどると、どんな絶対パスになるかを
求めるようなライブラリってないかな?
addr2lineでシェアドライブラリの中のアドレスを解決したいんだけど
やり方をおしえて
0069デフォルトの名無しさん2012/04/16(月) 15:53:59.13
>>65
GCCをいじれば何だって出来ると思うぞ
0070デフォルトの名無しさん2012/06/04(月) 00:08:43.89
0071デフォルトの名無しさん2012/06/06(水) 21:44:24.52
>>69
チンチンをいじれば汁が出るぞ
0072デフォルトの名無しさん2012/06/14(木) 17:47:37.58
Great Chin Chin
0073デフォルトの名無しさん2012/06/15(金) 06:40:50.35
Eigenってスマートポインタ使えないのかorz
0074デフォルトの名無しさん2012/06/19(火) 16:59:55.96
カスタムアロケータすれば使える
ただEigenの何が速いのか未だに分からない
for文で書いた行列演算の方がよっぽど速い
0075デフォルトの名無しさん2012/06/21(木) 16:24:37.97
C/C++フル対応など、Windows Phone 8アプリにコア技術共有の効果
ttp://news.mynavi.jp/news/2012/06/21/104/
0076デフォルトの名無しさん2012/06/23(土) 23:37:15.52
売れたら作らないでもないけど、あんまり見込みないな。
Windows8自体が、かなり酷いし。
0077デフォルトの名無しさん2012/06/28(木) 20:36:08.96
8のおかげでアンドロ覚える気になりましたよええ
0078デフォルトの名無しさん2012/07/05(木) 14:09:47.48
超コンパクトなポリゴンライブラリはありますか?
周辺が肥大化しててもOKですが、コアの部分がコンパクトなものが欲しいです。
0079デフォルトの名無しさん2012/07/05(木) 14:44:57.26
WebGL
0080デフォルトの名無しさん2012/07/08(日) 07:50:09.88
HTML5
0081デフォルトの名無しさん2012/08/05(日) 00:08:11.66
パスをファイル名とディレクトリに分解したいんだけど
libcでお勧めの関数ある?
0082デフォルトの名無しさん2012/08/05(日) 00:08:45.08
よっこいショー!
0083デフォルトの名無しさん2012/08/06(月) 14:18:17.00
std::string
join
0084デフォルトの名無しさん2012/08/07(火) 13:54:02.60
有名なライブラリって、サイズがでかくならない?
0085デフォルトの名無しさん2012/08/07(火) 13:56:56.30
何と比較したサイズなのかがさっぱり
0086デフォルトの名無しさん2012/08/07(火) 15:36:58.12
イベント駆動で、いらんイベントまでサポートしてたらでかくなるだろ
0087デフォルトの名無しさん2012/08/08(水) 01:45:40.99
あれみたいに
使う時だけでっかくなるような感じが一番だよね
0088デフォルトの名無しさん2012/08/08(水) 14:50:39.75
>>81
strlen
strstr
0089デフォルトの名無しさん2012/08/08(水) 14:52:39.61
strlen + strrchr だった
0090デフォルトの名無しさん2012/09/08(土) 20:15:15.43
pocoいいよpoco
0091デフォルトの名無しさん2012/09/08(土) 21:33:36.29
モテようとして
0092デフォルトの名無しさん2012/09/29(土) 16:08:43.69
質問ですが、double型の銀行丸め(JIS丸め)ってCまたはC++の標準ライブラリに無いですか
もし無いなら、double型の銀行丸め(JIS丸め)を実装した定番でフリーのライブラリとか紹介いただけませんでしょうか
(自力で書いた場合、数値的な安定性とか実行効率とかが気になるのでできれば実績のある実装を流用したい
0093デフォルトの名無しさん2012/09/29(土) 16:20:23.08
VBのCOMオブジェクトを使う
0094デフォルトの名無しさん2013/01/07(月) 22:01:51.45
>>92
C99標準ライブラリの範疇だと、
fesetroundでFE_TONEARESTを指定すればできるはず。

コンパイラが対応していない場合で、x86系(x86-64含む)なら、
SSE2の_mm_cvtsd_si32/_mm_cvtss_si32(dobule/float→int)や
SSE4の_mm_round_sd/_mm_round_ss(dobule/float→double/float)など。
(前者は別途丸めモードを設定しておく必要あり)
あるいはインラインアセンブラでそれらかFPUを呼ぶ方法もある。
0095デフォルトの名無しさん2013/01/20(日) 11:01:01.82
FLTK
0096デフォルトの名無しさん2013/01/20(日) 20:01:23.11
>>95
flwmのために作られた ウィジェットツールキットだっけ?
サンプルについてきた test/sudoku にハマっている
0097デフォルトの名無しさん2013/02/23(土) 13:55:51.08
偏微分方程式ソルバーでお勧めって何がある?
0098デフォルトの名無しさん2013/02/27(水) 01:16:30.73
0099デフォルトの名無しさん2013/02/27(水) 19:18:46.79
0100デフォルトの名無しさん2013/03/22(金) 00:10:43.76
Git初心者です

/.../foodirを、
git init --separate-git-dir=/sepadirで別のとこにリポジトリ情報保存していました。

ずっと前に気にせずにfoodirをpuyodirに変更したらしく、gitのコマンドが
fatal: Could not switch to '/.../foodir': No such file or directory
と出て使えなくなりました。

git configですら使えなくなり、どうやってディレクトリ名変更をgitに伝えればいいかわかりません。
/sepadir内のconfigファイルに worktree = /.../foodir とあったのですが、これを直接書き換えても大丈夫なんでしょうか・・・

どうかよろしくお願いします。
0101デフォルトの名無しさん2013/03/22(金) 05:15:03.57
大丈夫
0102デフォルトの名無しさん2013/03/25(月) 00:02:10.31
>>100
大丈夫です
0103デフォルトの名無しさん2013/03/25(月) 22:59:12.15
C++のライブラリでお勧めてあります?
boostは互換性に問題がありそうなので。
0104デフォルトの名無しさん2013/03/26(火) 01:28:53.43
>>103
何をするライブラリを探してるの?
何と何との互換性のことを心配しているの?
0105デフォルトの名無しさん2013/03/26(火) 02:42:54.57
>>103
libc++かな
0106デフォルトの名無しさん2013/03/27(水) 09:49:40.89
なにを思ってもまずはboost
もしboostすらうまく動かない環境では既存の汎用品はあきらめて
どこかにコンパイラ込みで専用品・カスタマイズ品を開発してもらったほうがいい
0107デフォルトの名無しさん2013/03/27(水) 09:55:11.70
>>106
今boostを使っているのだが他に独自ライブラリとか色々使ってるので統一しようと思って聞いています。
0108デフォルトの名無しさん2013/03/27(水) 16:39:30.86
>>107
なにを互換性の問題といってるのか分からない
0109デフォルトの名無しさん2013/04/01(月) 02:52:45.80
ちょっとわずかに言い方が誤用だっただけで揚げ足取りかよ…
0110デフォルトの名無しさん2013/04/01(月) 11:56:00.42
何言ってんのお前
0111デフォルトの名無しさん2013/04/01(月) 14:59:15.55
>>103
結局、boostの互換性の問題ってなんですか?
0112デフォルトの名無しさん2013/04/01(月) 16:49:49.64
>>109>>103だとしたら頭おかしいな
0113デフォルトの名無しさん2013/04/01(月) 17:16:37.62
109は何に対して何を問題視してるか不明すぎだから無視しておけばいいんじゃねーの
0114デフォルトの名無しさん2013/04/01(月) 17:26:55.60
boostは処理系の差異を楽に吸収させるのにいいんじゃない?
使わない場合と比べて互換性の問題といわれるものはむしろ減るよな?
0115デフォルトの名無しさん2013/04/01(月) 19:39:37.59
わざわざ呼び捨てしてまでも過大評価がしたいのか?
0116デフォルトの名無しさん2013/04/01(月) 19:40:18.19
>>112
ウザイなおまえケンカ売ってるのか?
本当につよいやつは強さを口で説明したりはしないからな
口で説明するくらいならおれは牙をむくだろうな
おれパンチングマシンで100とか普通に出すし
0117デフォルトの名無しさん2013/04/01(月) 19:52:43.83
なんだブロントさんか
0118デフォルトの名無しさん2013/04/01(月) 19:57:56.49
俺がどうやってBurontだって証拠だよ
0119デフォルトの名無しさん2013/04/01(月) 20:32:05.46
>>118
お前、日本語がおかしすぎる
0120デフォルトの名無しさん2013/04/01(月) 20:33:01.52
>>116
> おれパンチングマシンで100とか普通に出すし

おまえ弱すぎだなww
おれは105くらい余裕で出すぞ
0121デフォルトの名無しさん2013/04/01(月) 20:51:42.90
突然だけど
long long hoge[N][S][101];
fill(hoge[0][0], hoge[N][0], -1LL);
ってどういうことか教えろください
0122デフォルトの名無しさん2013/04/01(月) 20:57:56.32
すれちだったなあ
0123デフォルトの名無しさん2013/04/01(月) 21:08:47.48
>>121
longlong型の3次元配列を定義
fillって関数の第一引数にhoge[0][0][0]のアドレスを、第二引数にhoge[N][0][0]のアドレス、第三引数にマイナス1を渡すって意味
0124デフォルトの名無しさん2013/04/01(月) 21:30:16.02
お前の勝手なルールでこの場所に固執するのは勝手にすりゃいいけど、
総合的な場所よりは使って気づいている人が多そうなスレの方が
まともな回答が得られる可能性が高いとは考えないのかな
0125デフォルトの名無しさん2013/04/02(火) 01:59:04.76
>>124
回りくどいな。 はっきり言え。
0126デフォルトの名無しさん2013/04/02(火) 02:54:26.51
叩いてるのが一人しかいないって?
お気楽でいいね〜
0127デフォルトの名無しさん2013/04/24(水) 12:12:16.87
FLTKのウェブサイトにアクセスできない

Fast Light Toolkit
FLTK Apps FLTK Library Forums Links Login
[ Home | Articles & FAQs | Bugs & Features | Documentation | Download | Screenshots ]
http://www.fltk.org/ のキャッシュです。 このページは 2013年4月18日 17:25:28 GMT
0128デフォルトの名無しさん2013/04/26(金) 08:27:30.88
きょうもだめでした
http://www.fltk.org/
0129デフォルトの名無しさん2013/04/27(土) 01:55:12.48
なにこれ
http://fltk.org/?nr=0
0130デフォルトの名無しさん2013/04/27(土) 17:43:36.53
(サーバーがぶっ壊れたからグーグルに)切り替えていく
って事かな
0131デフォルトの名無しさん2013/05/26(日) 03:54:41.86
お勧めのシグナル解析ライブラリplz
0132デフォルトの名無しさん2013/05/30(木) 19:40:44.10
DirectXとかにある
ビット演算子で↓のようになってるのは
dwFlage = ○○|○○|○○;
dwFlageに選択した3つの要素を入れるってことで良い?
0133デフォルトの名無しさん2013/05/30(木) 19:48:33.10
>>132
ok
0134デフォルトの名無しさん2013/05/30(木) 19:51:30.79
dwFlage = 1|2|3;
dwFlage = 1|2|4;

この違いが分かるならそれでよい
01351322013/05/30(木) 20:42:42.57
ありがと
0136デフォルトの名無しさん2013/05/30(木) 21:52:11.45
ゲームのサウンドのライブラリを作るとして
wavを読み込んで生成したチャンネルを
個別で解放する機能も必要だと思う?
0137デフォルトの名無しさん2013/05/30(木) 21:53:33.38
あと
ストリーム再生出来ないとやっぱし困る?
静的再生だけじゃダメかな?
0138デフォルトの名無しさん2013/05/30(木) 22:00:08.51
対象プラットフォームにもよるが両方とも必要
0139デフォルトの名無しさん2013/05/31(金) 12:15:20.65
DirectXで

DDPRESENT_PARAMETERS d3dpp;
d3dpp.Presentationlnterval = D3DPRESENT_INTERVAL_DEFAULT;
の設定で映像が一定間隔で描画されるようになるけど
その描画の間隔は1秒60フレームなの?
0140デフォルトの名無しさん2013/05/31(金) 12:22:48.13
リフレッシュレートとは無関係
0141デフォルトの名無しさん2013/05/31(金) 18:19:22.62
directxスレで聞けよ
0142デフォルトの名無しさん2013/05/31(金) 19:00:46.69
おばかさん達が次スレを用意せずに落としたからな
01431372013/05/31(金) 20:41:22.64
説明不足ですまん
ライブラリからゲームを作成していて
サウンド関係は静的再生のみ出来てて
ストリーミング再生も実装する必要があるのか聞きたい
追加したほうが良いのは分かるけど
サウンド以外にも作らなくちゃいけないものは山ほどあるから必須じゃないなら後回しにしたい
0144デフォルトの名無しさん2013/05/31(金) 20:47:45.68
スマホみたいにストレージが限られるプラットフォームもターゲットだったら必須
プライベート用なのか公開も視野に入れてるか知らんが、ぶっちゃけこの程度も判断できない人の
作ったライブラリなんて使いたくないな
0145デフォルトの名無しさん2013/05/31(金) 20:49:11.44
>>144
Windows用のゲームだ
0146デフォルトの名無しさん2013/05/31(金) 21:59:31.17
既に出来てるならそのまま出せばいいじゃない
つけてくれって言われてから考えればいい
0147デフォルトの名無しさん2013/06/02(日) 10:10:50.11
0148デフォルトの名無しさん2013/06/03(月) 00:36:16.85
>>146
ないとゲームが作れない
ってことがあるのか知りたいんだ
0149デフォルトの名無しさん2013/06/03(月) 06:49:23.79
>>148
ある
0150デフォルトの名無しさん2013/06/03(月) 08:52:52.30
>>149
どういうとき?
0151デフォルトの名無しさん2013/06/03(月) 09:02:26.74
インターネットラジオ連動型ゲームみたいにストリームで音鳴らすことが前提のゲーム

ある、なし、で言えばあるに決まってるだろ
ぶっちゃけ音なんて一切サポートしてなくてもたいていのゲームは作れる
ターゲットなどを考えて優先順位つけりゃいんだよ

わりとマジにおまえは頭悪そうだからプログラミング諦めたほうがいいぞ
0152デフォルトの名無しさん2013/06/03(月) 12:28:47.27
>>151
サンクス

とりあえず
ネット使わない昔ながらのゲームになるから
しばらくは静的再生だけでいくよ
0153デフォルトの名無しさん2013/06/03(月) 13:53:38.31
素直なやつだ
わりとマジに早死しそうだからプログラミング諦めたほうがいいぞ
0154デフォルトの名無しさん2013/06/03(月) 14:23:22.47
ストリーミング無しとか話にならない。
音色データを全部メモリに乗せっぱなしか? 鳴らす時にファイルひとつ丸々読むのか? そんなクズライブラリ使うくらいなら毎回手で書いた方がマシ。
0155デフォルトの名無しさん2013/06/04(火) 01:02:54.72
今、公開前提でゲームライブラリ作ってるんだが
公開用と埋め込み用でヘッダーファイルはどういう風に管理すればいいかな?

現状だと、includeディレクトリとimplディレクトリで分けて管理しているわけだが
やっぱこんなもんか?

>>143
BGMとなれば必須。
ストリーミングはデータの読み込み時間とメモリの節約。
0156デフォルトの名無しさん2013/06/04(火) 02:07:03.01
効果音やらボイスならともかくBGMにそんな目くじら立てんでも
0157デフォルトの名無しさん2013/06/08(土) 23:51:13.73
そんなことぐらい自分で判断しやがれ
ここで聞いても答えはでんだろ
他の人の意見を聞くならまだしも
お前が信じるかどうかなんて知ったことじゃねえ
0158デフォルトの名無しさん2013/06/19(水) 11:54:11.46
PC88の頃から考えれば
データがデカすぎるだけ。
0159デフォルトの名無しさん2013/07/13(土) NY:AN:NY.AN
C++で通信ライブラリのようなものを作ってます
よかったらお試しください
http://ichishino.nobody.jp/
0160デフォルトの名無しさん2013/08/27(火) NY:AN:NY.AN
/**
* @FILEAME o72.h
* @DESCRIPTION オナニーに使う動画、画像を射精管理する
*/

typedef int o72bool;

struct o72 {
int sex;
int speed;
long counter;
int okazuflags;
char okazuname;
union {
eropict okazuimage;
erovideo okazudouga;
};
};

extern o72bool okazujunbi(struct o72 * poni);
extern o72bool o72start(struct o72 * poni);
extern o72bool o72hand(struct o72 * poni, int maxspeed);
extern o72bool o72page(struct o72 * poni, int pages);
extern o72bool o72getframe(struct o72 * poni, BITMAPFILEHEADER *bmi, RGB24 *bmpor);
extern o72bool o72dougactrl(struct o72 * poni, HWND parentWindow, unsigned long command);
extern o72bool o72finish(struct o72 * poni, double pai, double theta, unsigned mse);
extern o72bool o72destroy(struct o72 * poni);
0161デフォルトの名無しさん2013/09/02(月) 23:41:01.83
?
0162デフォルトの名無しさん2013/09/04(水) 15:39:44.51
C++のBOOSTをインストールしたいんですが開発者コマンドプロンプトでフォルダを指定した後に
bootstrapを実行すると
'cl'は、内部コマンドまたは外部コマンド、操作可能なプログラムまたはバッチファイルとして認識されていません
ってでてb2.exeとかができません

Visual Studio 2012
Windows 7 Home Premium

関係あるか分かりませんが、bootstrap.batをダブルクリックして実行すると
コンピューターにmspdb110.dllがないため、プログラムを開始できません。
とシステムエラーが出ます

パソコンに関しては初心者ですので分かりやすく教えて下さい
0163デフォルトの名無しさん2013/09/04(水) 15:43:48.92
パソコン初心者がなぜC++をする
0164デフォルトの名無しさん2013/09/04(水) 15:47:48.29
>>162ですが
boost_1_54_0をインストールしようとしていて
VSはfor Desktopです

他のパソコンでは同じVSとBOOSTで正常にインストールできたのでパソコンの何かの設定が原因なのかなと思っています
0165デフォルトの名無しさん2013/09/04(水) 16:04:22.30
Visual Studioごと配布してるのかもな。ライセンス違反の臭いがする
0166デフォルトの名無しさん2013/09/04(水) 16:30:10.06
>>165
ふつうに公式からdownloadしただけなんですが
0167デフォルトの名無しさん2013/09/04(水) 18:03:19.25
>>164
boostから、環境の違いで開発環境が見えていないんだろ

ところで、C++は初心者じゃないのね?
両方初心者だと茨の道だぞ
0168デフォルトの名無しさん2013/09/04(水) 19:01:40.85
>>167
C++はある程度分かるんですが
PATHとかですか?
0169デフォルトの名無しさん2013/09/04(水) 20:43:18.81
>>168
自分の環境でないので、詳細はわからないが、エラーから考えると
そうだろう。パスを設定している起動スクリプトが違うとか、
OS、32bit、64bitの違いとか、boostインストール時のパスの設定とか
そのあたりじゃないのかい?
ちなみにboostは専用スレがあるので、聞くならそっちの方が
いいんじゃないか
0170デフォルトの名無しさん2013/09/04(水) 22:26:29.26
>>169
ありがとうございます
64bitにすべきだったみたいです
お騒がせしました
0171デフォルトの名無しさん2013/09/07(土) 12:37:14.29
VC++2012でのauto_ptrの実装を見てたら以下のように書いてた

   auto_ptr(auto_ptr_ref<_Ty> _Right) _THROW0()
   { // construct by assuming pointer from _Right auto_ptr_ref
      _Ty *_Ptr = _Right._Ref;
A     _Right._Ref = 0; // release old
      _Myptr = _Ptr; // reset this
   }

「A」の行って何か意味あるの?
0172デフォルトの名無しさん2013/09/07(土) 12:46:58.91
auto_ptr()の呼び出し元が持ってるポインタを無効にしてるんじゃない?
0173デフォルトの名無しさん2013/09/07(土) 13:30:38.54
>>171
所有権の移動
これをやらないと2重delete発生
0174デフォルトの名無しさん2013/09/07(土) 13:35:48.97
>>173
 _Rightは参照じゃない
 auto_ptr_refはデストラクタで何もしない
0175デフォルトの名無しさん2013/09/07(土) 14:11:59.19
>>174
ああホントだ
脳内でコピーコンストラクタと思い込んでた
スマソ
0176デフォルトの名無しさん2013/09/07(土) 16:27:37.58
OpenGL な UI を作るライブラリ一覧
http://qiita.com/shimacpyon/items/e5d2a4e2019273345c37

AntTweakBar
http://anttweakbar.sourceforge.net/doc/
ライセンスは zlib

GWEN
https://github.com/garrynewman/GWEN
ライセンスは MIT

libRocket
http://librocket.com/wiki
ライセンスは MIT

CEGUI
http://www.cegui.org.uk/wiki/index.php/Main_Page
ライセンスは MIT (0.5.0 までは LGPL)
0177デフォルトの名無しさん2013/09/09(月) 23:36:58.65
ttp://blog-imgs-29-origin.fc2.com/s/h/a/shajiku/nodes_001.jpg

こういうノードを使いたいんですが、ライブラリありますか?
0178デフォルトの名無しさん2013/09/10(火) 08:34:32.58
>>177
Graphvizとかどうだろうか?
0179デフォルトの名無しさん2013/09/10(火) 14:27:27.99
>>178
ありがとうございます。参考にします
0180デフォルトの名無しさん2013/09/15(日) 20:24:41.90
>>174
_Ty次第じゃね?
0181デフォルトの名無しさん2013/09/15(日) 20:26:24.98
本当に知りたいなら実装を自前のコードにコピーして、コード変えてデバッガで追ってみればいいんじゃないかな。

少なくとも._Refは参照先のポインタで意味がないとは思えないんだが。
0182デフォルトの名無しさん2013/09/28(土) 10:14:51.62
vc++の実装見てたら
shared_ptr<Ty>とweak_ptr<Ty>がTy*を持ちつつRef_count経由でもTy*を参照してる。
Ty*deleteはRef_countがやってるのはいいとして、値の取得は自分のTy*をみてる。
こうする理由ってあるのかな?自前のTy*いらないような気がするんだが。
0183デフォルトの名無しさん2013/09/28(土) 14:25:35.99
>>182
速度じゃね?
0184デフォルトの名無しさん2013/09/28(土) 23:11:45.95
やっぱそうかな
0185デフォルトの名無しさん2013/10/18(金) 01:47:17.33
OpenShogiLib 将棋用ライブラリ
0186デフォルトの名無しさん2014/01/04(土) 22:33:04.84
なにかありましたらどうぞ
0187デフォルトの名無しさん2014/01/04(土) 23:12:45.34
自分でライブラリていどを作れない奴は無能という称号が相応しいよな
便利とか強請る気持ちは高等な概念構築の統合能力が無いだけだろ。
0188デフォルトの名無しさん2014/01/04(土) 23:17:06.74
馬鹿発見
0189デフォルトの名無しさん2014/01/05(日) 11:38:20.56
>>187
ライブラリのユーザは甘やかすべきだし、実際甘えてくる。
その覚悟があればどうぞ。
0190デフォルトの名無しさん2014/01/14(火) 00:45:21.26
>>187はゴミライブラリを作りまくっているようですね
実用的でないライブラリは、ゴミと同じ、容量の無駄
0191デフォルトの名無しさん2014/01/19(日) 13:04:56.55
>>187
おまえはCPUから作れよ。 基板とかHDD、メモリもな。
回路図を描く為の紙の作成から始めると良い。
その次は鉛筆だろうな。

追いつくのに2万年くらいかかると思うから紙とペンとガラスの製造に成功したら
不老の薬を作るのもアリかもしれない。
0192デフォルトの名無しさん2014/03/01(土) 22:36:56.07
速くて書きやすい行列計算ライブラリを探しています。
Eigenを使わせてもらっていますが、Eigenより速いものを求めています。
iOSやAndroidアプリ内の簡単な行列計算で使う予定です。よろしくお願いします。
0193デフォルトの名無しさん2014/03/01(土) 22:57:53.73
iOSならAcceralete.frameworkのBLAS使え
http://hiho-developer.hatenablog.com/entry/20131220/1387479346
0194デフォルトの名無しさん2014/03/02(日) 12:44:47.97
両方で使うことを考えると結局Eigen使うことになるヨカーン
0195デフォルトの名無しさん2014/03/02(日) 18:35:11.06
助言ありがとうございます。
ObjCのみであればAcceraleterを使おうかと思ったのですが、Androidに流用したかったので…
0196デフォルトの名無しさん2014/03/02(日) 19:39:36.77
ヤッパリネー
0197デフォルトの名無しさん2014/03/30(日) 03:12:29.11 ID:uuMlwnGH
cereal - A C++11 library for serialization
BSD license.
http://uscilab.github.io/cereal/index.html
0198デフォルトの名無しさん2014/04/03(木) 22:41:34.62 ID:DTWJ4yVe
boost::serializationとどう違うん?
0199デフォルトの名無しさん2014/05/03(土) 19:03:21.65 ID:HUhckLri
C++ JSONのパースとシリアライズライブラリ
http://ichishino.nobody.jp/jsonity/
0200デフォルトの名無しさん2014/05/04(日) 06:56:39.13 ID:g2qq1xmD
Google Testについて質問なのですが、
Combineジェネレータを使ったとき、値パラメータの組み合わせそれぞれについて
コンソールなりXMLなりにテスト状況を表示するのでテスト自体が遅くなったりして困るのですが
Combineジェネレータを使ったテスト狙い撃ちで組み合わせごとの表示を無くす方法はありませんかね…
イベントリスナーを置き換えて表示形式を変更をさせる方法のサンプルは本家のwikiに転がっていますが、(MinimalistPrinter)
これだと全てのテストの表示に変更が及んでしまうという…
0201デフォルトの名無しさん2014/08/10(日) 13:22:32.63 ID:VrE34Uvu
かけー
0202デフォルトの名無しさん2014/10/06(月) 22:11:07.92 ID:tIlHofLk
ネタなーい?
0203デフォルトの名無しさん2014/11/08(土) 14:03:49.33 ID:BM9hg24M
素人だけども一般的に自分書いたコードがどんなもんなのかきになる(´・ω・`)
0204デフォルトの名無しさん2014/11/08(土) 15:43:27.47 ID:D1mfqEl0
うpしてみてわ?
0205デフォルトの名無しさん2014/11/08(土) 16:27:26.40 ID:ebCh2W7f
>>203
GitHubにアップップ
0206デフォルトの名無しさん2014/11/08(土) 17:27:25.59 ID:BM9hg24M
githubってこれあっぷろーだーなの?
0207デフォルトの名無しさん2014/11/08(土) 17:58:17.25 ID:BM9hg24M
ちょっと登録してみる
02082032014/11/08(土) 18:34:00.59 ID:BM9hg24M
htps://github.com/sugawara5110/c-code/tree/master/neko-puzzle
02092032014/11/08(土) 18:36:58.72 ID:BM9hg24M
あっぷしてみましたのでご意見などいただけると勉強になります(´・ω・`)
0210デフォルトの名無しさん2014/11/08(土) 18:40:48.62 ID:JaU3wmB/
とりあえず.exeはignoreするもの
02112032014/11/08(土) 18:43:05.89 ID:BM9hg24M
あーいらんかったってことですか(´・ω・`)
たしかにソースだけあればよかったか・・
02122032014/11/08(土) 18:43:43.17 ID:BM9hg24M
さっそく見ていただき感謝いたす
0213デフォルトの名無しさん2014/11/08(土) 19:40:16.69 ID:ebCh2W7f
これで君も猫タコの仲間入りだにゃ!
02142032014/11/08(土) 19:53:08.87 ID:BM9hg24M
猫タコ?
0215デフォルトの名無しさん2014/11/08(土) 19:56:53.52 ID:1s+x8/Zl
>>214
GitHubのマスコットキャラ
猫の姿でタコの足のキャラクタがGithubのあちこちにあるっしょ?
オクトキャットっていうらしいよ
0216デフォルトの名無しさん2014/11/08(土) 19:59:55.45 ID:BM9hg24M
あーいわれてみれば
ここの住人はほとんど使ってるのかしら。
他の人のコードも見てみたい
0217デフォルトの名無しさん2014/11/08(土) 22:37:31.35 ID:SdfgCKME
>>209
自動で最適な解を求める機能も
追加しろよ。
0218デフォルトの名無しさん2014/11/09(日) 09:45:50.19 ID:62DRc8BH
>>217
それはいいアイデアですな
0219デフォルトの名無しさん2014/11/09(日) 16:35:08.16 ID:LTV/EpFj
難しいのでわないかいw
0220デフォルトの名無しさん2014/11/09(日) 17:10:06.02 ID:62DRc8BH
最短を求めるとなると私の頭では無理なので
とりあえず自動で最後までそろえるってのだけを目標で・・・
0221デフォルトの名無しさん2014/11/15(土) 01:22:29.68 ID:8XdLSiZM
自動でパズルさせるのはなかなか難しい。
16ピース5回中3回くらいは途中停止する。最後まで行くときは2分くらいで終わる。
64ピースやってみたが6分くらいで行けそうなところ残り4ピースで途中停止した
もう少し調整するかな。勉強になる
02222032014/11/17(月) 22:39:43.86 ID:ymrvm2RC
htps://github.com/sugawara5110/c-code/blob/master/neko-puzzle/neko-puzzle.cpp
あの・・最短距離ではないんだけども自動で完成させるプログラム追加しました
よろしければコメントなどを・・・
0223デフォルトの名無しさん2014/11/19(水) 05:09:58.21 ID:g6yRyndh
>>222
なかなかやるな。ちゃんと解けるわ。
この後、何する?
02242032014/11/19(水) 18:35:58.24 ID:8L+2ukXn
>>224
ありがたいお言葉(´・ω・`)
画像処理系に興味があるんだが一番適してるライブラリって何だろうね
DXライブラリでやるとなるとGetPixelで色情報取ってどうにかするくらいしか
今のところ思い浮かばぬ
0225デフォルトの名無しさん2014/11/19(水) 21:18:09.65 ID:g6yRyndh
>>224
画像処理系と言っても範囲が広いが
photoshopみたいなのを作りたい
のか?
02262032014/11/19(水) 23:20:54.92 ID:8L+2ukXn
最終的にそんなレベルまで行ければ最高だが
まずは指定した範囲の色の変換くらいからやってみたいわ。

前に『C言語で学ぶ実践画像処理』とかいうやつを見たんだが
さっぱりで、何かライブラリ使えばもう少し何とかならんかなと思ってね。
0227デフォルトの名無しさん2014/11/19(水) 23:40:47.01 ID:HNS1lgWg
>>226
そのレベルで悩む位ならGraphics Gemsシリーズを通読してみては?
http://www.glassner.com/portfolio/graphics-gems-series/

今手に入るか微妙だけど。
02282032014/11/20(木) 00:03:53.01 ID:gdrc2KWW
さっそくぽちりましたわ
感謝いたす
0229デフォルトの名無しさん2014/11/20(木) 06:56:00.31 ID:4Zrrqf13
opencv 見といたほうがいいよ。
02302032014/11/20(木) 19:48:57.40 ID:gdrc2KWW
>>229
これは初めて存在を知った。
さんくす
0231名無しさん@そうだ選挙に行こう2014/12/13(土) 18:07:41.25 ID:jujLqWbt
型推論が議論になってたからどんな難しいことやるのかと思ったら分かりきってることを書かなくて済むだけで
可読性は返ってあがるんじゃないかという物だった
0232名無しさん@そうだ選挙に行こう2014/12/13(土) 18:08:13.84 ID:jujLqWbt
ライブラリのスレだった。スマン
02332032015/01/04(日) 11:14:04.62 ID:xl4tJwy6
https://github.com/sugawara5110/c-code/tree/master/slide-puzzle
結局まだパズルいじってました。
よかったらご意見頂けると勉強になります。
出来たexeファイルとhkフォルダ,oggフォルダ,saveフォルダ,z_cam_ewc.bmpファイルと
パズルにする動画(mpg,avi)か画像を同じとこにしていただくと動画像選べます(´・ω・`)
webカメラ繋げると映った映像でできます。
0234デフォルトの名無しさん2015/03/02(月) 14:49:29.94 ID:u4npGgFL
  
0235デフォルトの名無しさん2015/03/20(金) 18:41:36.03 ID:PgACHQnR
0236デフォルトの名無しさん2015/05/01(金) 16:33:07.77 ID:aRUumtfx
map 便利っすよねぇ。簡易DBできちゃう。
0237デフォルトの名無しさん2015/05/01(金) 16:53:10.80 ID:xCWnJTf9
>>236
保存しない。ほとんどの動的言語、スクリプト言語はmapが標準で使われる。
0238デフォルトの名無しさん2015/05/01(金) 18:47:32.57 ID:9/bcUBPU
え そなの?
0239デフォルトの名無しさん2015/05/24(日) 00:41:11.39 ID:+F5s2GBE
自作ライブラリをGithubに晒すも誰もクローンしてくれない
ライブラリ製作者は宣伝もするべきか否か
0240デフォルトの名無しさん2015/05/24(日) 02:13:39.20 ID:Ewhf1zLw
>>239
今ここで宣伝しろ。
面白いライブラリなら使うし、つまらなければ使わない。
0241デフォルトの名無しさん2015/05/24(日) 04:24:51.75 ID:+F5s2GBE
>>240
わかった。

FixedString - 固定長バッファ文字列コンテナ
https://github.com/narupo/fixed-string
Csv - CSVパーサ
https://github.com/narupo/csv-parser

どちらもC11です。
0242デフォルトの名無しさん2015/05/25(月) 11:35:43.43 ID:IHH4zZrw
コンテナやパーサがC++じゃなくて、Cで提供されてどうしろと。。。

さらにプロジェクトも大きいけど、、、
欲しいのはC++のクラスヘッダーで、使用法はインクルードするだけのインスタントに使える小さなヘッダーであって、、、
0243デフォルトの名無しさん2015/05/25(月) 17:32:28.98 ID:eFAMmtaP
>>242
C++互換にしてインストールを簡単にしろってことかな
0244デフォルトの名無しさん2015/05/25(月) 17:47:12.89 ID:eFAMmtaP
というかREADMEにインストール方法書いてないね
ごめんw書いておきます
0245デフォルトの名無しさん2015/05/25(月) 23:31:05.65 ID:WhsXE+Ib
な? 公開するといいことあるだろ?
0246デフォルトの名無しさん2015/05/26(火) 00:15:49.93 ID:gT6Ig0YJ
>>245
そうだね。
0247デフォルトの名無しさん2015/05/26(火) 00:30:31.86 ID:AOagakZ7
C++で使えるようにしても正直要らんから(文字列クラスは標準にあるしCSVパーサーも数十行で書ける)
C言語だけで十分だと思うよ
0248デフォルトの名無しさん2015/05/26(火) 00:46:33.31 ID:gT6Ig0YJ
>>247
std::stringとは設計方針がちょっと違うんだけど、やっぱりそうなるか…
0249デフォルトの名無しさん2015/05/26(火) 07:44:41.52 ID:AOagakZ7
>>248
じゃあ何が違ってどういうメリットがあるんだ?それをまずトップに書かないと。
一応言っておくけど追加できなくなったら何事も無かったかのように勝手に切り詰められるのはメリットとは思わないよ。

あとちらっとソース見たけどマクロとGenericでオーバーロードモドキか…
_GenericはC++に無いからコンパイル通らない。(必要もないから将来的にも絶対入らない。)
だから一生懸命extern "C"とか書かなくて大丈夫だよどの道使えないから。
0250デフォルトの名無しさん2015/05/26(火) 09:23:00.22 ID:gT6Ig0YJ
>>249
> トップに書かないと
確かに。自動で伸縮しない所がメリットでありデメリットでもあると考えてます。
_Genericは…うーん、そうなんですよね。C++でコンパイル通らない。
だから仮にC++に対応させるなら__cplusplusでプリプロセス分岐させようかと思うんだけど。
0251デフォルトの名無しさん2015/05/26(火) 12:06:56.19 ID:8yfffJz/
というか、C言語で、CSVパース出来たとして、何の用とで使えと?
0252デフォルトの名無しさん2015/05/26(火) 23:07:07.73 ID:7l+z4oEP
ちょっと厳しすぎるだろ
みんなが欲しがるようなライブラリなんて、いきなり作れるはずがない
こういうのを作って経験して、もっといいものを公開するようになったり出来るようになるんだろう
0253デフォルトの名無しさん2015/05/27(水) 01:14:53.03 ID:54lVu2mS
他人に見せるライブラリって、何処まで丁寧にエラー処理すれば良いか悩む。
0254デフォルトの名無しさん2015/05/27(水) 02:41:13.23 ID:aJ6ZFegx
>>251
それライブラリ製作者が考えることか?
0255デフォルトの名無しさん2015/05/27(水) 08:48:03.54 ID:O9y07yQ1
考えること。

ソースをライブラリ化するとき、
例えばライブラリフォルダに一式移動する
際、使う人あるかな、使用法わかるかな、とか考える。

もしくは、初めから使いたい人から要求されてライブラリになるな、
と確信してるときは、初めからライブラリフォルダにソースを置き、
始めはインターフェースはそれなりにしといて、中身空のメソッドだったりで、
使いながら育てる。
0256デフォルトの名無しさん2015/05/27(水) 08:59:44.23 ID:zpturinB
アプリケーションを実装する際にできたライブラリか
汎用なライブラリを作りたくてそれだけを作ったかで違ってくるよな

前者はなんかクソな設計で変更が難しいけど実際に動いてる実績があって
後者は延々と理想求めたりして実装がころころ変わったりして
バグフィックスだけで良いのに使う側として常に追いかけなきゃならんとか
0257デフォルトの名無しさん2015/05/27(水) 09:53:36.20 ID:Sp3ce27d
>>253
理想はどんな場合でもハングしないでエラー返してくれることかなぁ。
外からメモリ壊してるとかは無理だけど。
0258デフォルトの名無しさん2015/05/27(水) 09:58:36.91 ID:n6H5is8U
csv パーサも固定長文字列も、必要になった時に、わざわざ検索してライブラリ探さないでしょ。
書いた方が早いし、自分の要求にフィットしたものが得られる。
誰も使ってくれないって当たり前でしょ。
このレベルの細かいものなら、コピペしてすぐ使えるレベルじゃないと。

>>252
親切にしてほしければヨソに行くべき。
0259デフォルトの名無しさん2015/05/27(水) 10:23:50.27 ID:aJ6ZFegx
>>255
あなたの言ってることは大事なことだ思うけど、
鍛冶屋が作ったナイフで鉛筆を削るか干し肉を削ぐかは使用者が決めることじゃないかなぁ。
0260デフォルトの名無しさん2015/05/27(水) 10:42:25.64 ID:aJ6ZFegx
>>258
「誰も使ってくれない」なんて言った覚えはないよ。
この程度の処理で大げさだってことですよね?
うーん、それは確かにそうですね。難しいですねライブラリって。
0261デフォルトの名無しさん2015/05/27(水) 12:17:21.94 ID:4NQ0ZIOa
誰も欲しがらないレベルなんだよな。
C++のプロジェクトにこのライブラリが入ってたら使ってるところとライブラリ全部削除して書き直すレベル
0262デフォルトの名無しさん2015/05/27(水) 12:38:05.44 ID:lhddlPIv
素直にC専用にしたほうがいいと思うがC11とかどれくらい使われてるやら
0263デフォルトの名無しさん2015/05/27(水) 13:05:33.39 ID:O9y07yQ1
>>259
おまえ馬鹿だな。
部品とそれを使うのがバッサリ分れてたのは第三世代言語まで。
開発時に結局部品も修正が必要となって、OOPで部品とその組み合わせとシームレスになったんじゃん。
0264デフォルトの名無しさん2015/05/27(水) 13:12:00.91 ID:O9y07yQ1
>>260
流れ読んでないね。

C言語だと今使われるのはOSとか特殊用途。
メモリ保護とリアルタイム性を保障できるライブラリなら大げさであっても要るだろうけど、OSにCSVパーサーは要らないってこと。

アプリ用のCSVパーサーなら、今のアプリはOOP言語になってるから、C言語用は要らない。
0265デフォルトの名無しさん2015/05/27(水) 14:31:37.57 ID:aJ6ZFegx
>>264
なるほど。それじゃC++に移植したら少しは需要出るかな?つまりアプリ用途で。
0266デフォルトの名無しさん2015/05/27(水) 15:09:54.31 ID:O9y07yQ1
Yes。

普通にググって、GPLじゃないことを確認したら、自分のソースのように使います。
といっても作者名を潰すわけでなく、超気に入った場合は作者のサイトのリンクファイルまでUPしておいたり。

C++のヘッダーだけだったら超OK、
CPPがある場合は自分で気に入らない部分を手直しできそうか目視チェック、
それを超えて大きい場合はサンプルを動かして費用対効果を考えます。
0267デフォルトの名無しさん2015/05/27(水) 15:46:40.38 ID:aJ6ZFegx
>>266
小回りの利いたライブラリも好まれるってことですよね。基本コピペで済むような。
CPPがある場合の手直しって何故するの?コンパイルの都合?
0268デフォルトの名無しさん2015/05/27(水) 16:05:37.46 ID:O9y07yQ1
全然違う。

>小回りの利いたライブラリも好まれるってことですよね。基本コピペで済むような。

クラス派生とかで、簡単に処理を足したり引いたり出来ないと、困るみたいな。

コピペしたくないし、小回りとも違うんだけど。

>CPPがある場合の手直しって何故するの?コンパイルの都合?

Hだと手直ししないって意味じゃなくて、Hだけだと全体を一瞬で読めて、手直しも一瞬って意味。

STLみたいのは手に負えないけど、費用対効果で使う。
0269デフォルトの名無しさん2015/05/27(水) 16:21:52.04 ID:aJ6ZFegx
>>268
ああ、OOPにしろってことね。
0270デフォルトの名無しさん2015/05/28(木) 02:32:35.00 ID:Q/PHM93y
>>265
需要ねえって何度も言ってるだろ・・・

>>266
ちゃんとライセンスに則って扱いましょうね。
GPLじゃなくてもお前のコードじゃないんだよ。
0271デフォルトの名無しさん2015/05/28(木) 04:39:20.67 ID:uU2xmjCS
CSVパーサー(笑)
そんな10分もあれば書けるようなものを
わざわざ怪しげなソース引っ張ってくるバカいないから(笑)
0272デフォルトの名無しさん2015/05/28(木) 05:09:28.73 ID:iUg4+VgF
需要ないのはわかったよ
http://www.kasai.fm/wiki/rfc4180jp
ここに書いてある仕様満たすのに10分かからないって本当?
0273デフォルトの名無しさん2015/05/28(木) 07:13:18.70 ID:GsmtxIyT
C++でライブラリ作るならboostにない機能にしろよ
0274デフォルトの名無しさん2015/05/28(木) 07:20:28.88 ID:qAXCkldS
個人や環境の差があるだろうが10分かからなくてもおかしくはない
とはいえRFC4180をそのまま実装しておわりってことはまずなくて
もっと簡便でいいかしっかり作り込むかで二極化してると思うんだよな
0275デフォルトの名無しさん2015/05/28(木) 07:38:31.92 ID:iUg4+VgF
10分の節約にしかならないなら需要もない訳か
JavaのOrangeSignal CSVとかは作りこんでるライブラリだよね
0276デフォルトの名無しさん2015/05/28(木) 07:54:57.38 ID:/29IIuZp
C11だからなぁ
完全に満たしてようが趣味で使えるレベルであろうがちょいと厳しいものがある
まあ停滞してたスレにいい風吹いたんでないの
0277デフォルトの名無しさん2015/05/28(木) 09:48:20.22 ID:syH+pQKv
>>271
それは真っ赤なウソ、というか現実知らな杉。

毎年(常時)莫大な初心者プログラマが発生し、ググるでCSVパーサーを探し続ける、のが現実wwwww
0278デフォルトの名無しさん2015/05/28(木) 10:48:16.51 ID:syH+pQKv
燃料投下。

boostと被ると要らない、といった意見には、このような現実の反論もあります。

ttp://d.hatena.ne.jp/yus_iri/20120328/1332888387
0279デフォルトの名無しさん2015/05/28(木) 11:55:58.71 ID:C5F/Fv0U
csvパーサなんて、この程度がブログに載っててコピペで使う、くらいで丁度いい。
241 のはメインメモリに全部読まないからメモリにやさしいかもしれないが、メモリ消費量を気にするくらい大きな csv を扱うのは疑問だ。
それにカラムに改行が入ってはならないという制限を付けるだけで、簡単に行単位で扱えるようになり、メモリ消費量が最大の一行分になる。

// " を含んだままカラムと扱う。
// 閉じてない " は最後まで 1 カラム。
const char * endOfCsvColumn( const char * p, const char * end ) {
const char delimiter[] = ",\r\n";
if ( *p != '"' )
return std::find_first_of( p, end, delimiter, delimiter+sizeof(delimiter) );
while ( p != end ) {
p = std::find( ++p, end, '"' );
if ( p != end && (++p == end || *p != '"') )
break; // quatation closed.
}
return p;
}
0280デフォルトの名無しさん2015/05/28(木) 23:20:28.85 ID:bIsDrlAn
そういう俺csvが乱立していたからRFCが出されたのに。
0281デフォルトの名無しさん2015/05/29(金) 00:04:13.41 ID:bAym9d9y
そんな状態でCSVなんかのRFC出されてもそれも需要ないよな。
厳密なのが欲しければおとなしくXMLとかjsonとか使ってる
0282デフォルトの名無しさん2015/05/29(金) 04:51:03.43 ID:qs5f7SgO
>>279
俺csvはともかく、これぐらいのサイズはやっぱり使いやすそうだなぁ
メソッド単位で使いまわせると便利だよな
0283デフォルトの名無しさん2015/05/29(金) 08:02:28.25 ID:BhuuzzRo
改行を含む場合に対応してなくてダブルクォーテーションのアンエスケープも
別にやらなきゃならんというなら素直にtsv使ったほうがいいな。
0284デフォルトの名無しさん2015/05/29(金) 13:06:57.82 ID:PDSs+1CX
279 は改行をを含むカラムに対応してるよ。改行が入ってると 279 を呼ぶ側で fgets() で簡単には済ませられないという話。どうせ大きくても数MB程度だろうから全部読んじまえ。
俺 csv って、エスケープされたままなのは別として、カラム取り出しだけで言えば RFC 準拠だろ。
改行コードに CRLF ではなく LF でも受け付けるのは逸脱だが、そんなん直したけりゃ直せるだろうし、渡す側で行処理するんだからそこでも対処できる。

好きなコンテナに格納することを考えたら、あのくらいの単純さが使いやすいだろう。
プロジェクトによってはもっと仕様を簡素化できるわけで、検索してあれこれ比べて選定するくらいなら、毎回書いても大したことはないということは理解して頂けたのではないかと思う。
0285デフォルトの名無しさん2015/05/29(金) 16:03:21.08 ID:qs5f7SgO
そうなると列数のためにヘッダーが必要になるのか
0286デフォルトの名無しさん2015/05/29(金) 18:59:23.12 ID:Y1+KdLtR
.orecsvの生成読み込み書き込み保存全部自前でやって外に公開しない
我が汚点ここに閉じれり
0287デフォルトの名無しさん2015/05/31(日) 18:44:09.08 ID:qAMsR7U5
コピペで組み込めるコードは魅力的ではある
俺もよくエディタから呼び出してペタペタしてる
0288デフォルトの名無しさん2015/05/31(日) 18:51:30.86 ID:1lTJ4ips
俺もコピペ用の自分専用オナペットを言語ごとに用意してるよ
最近はエディタで一発呼び出しできるから便利だ
0289デフォルトの名無しさん2015/05/31(日) 19:57:59.60 ID:aISW5E8s
>>288
嫁はcharですか?(声が池田秀一だと男だから婿か?)

スニペットって書こうや
0290デフォルトの名無しさん2015/06/01(月) 14:43:55.83 ID:w6ZTYj3g
バナナはおやつに含まれる
これは周知の事実ですがスニペットはライブラリに含まれますか?
0291デフォルトの名無しさん2015/06/01(月) 15:02:44.49 ID:af7LYGUO
僕のバナナはおっきいです
0292デフォルトの名無しさん2015/06/08(月) 17:40:07.97 ID:f6z+oPGU
EigenのMatrixXf型に、幅w 高さhの大きさの配列

float* db = new float[w * h];

をMapで入れる方法おしえてください
0293デフォルトの名無しさん2015/06/09(火) 10:27:41.86 ID:rq1TUv96
MatrixXf A = Map<MatrixXf>(&db[0], w, h);
0294デフォルトの名無しさん2015/06/11(木) 15:20:59.61 ID:SBJGIqGV
redSVDのデータを一気に読み出す方法ないでしょうか?
要素1つずつアクセスしてるととんでもなく時間がかかります。
0295片山博文MZ ◆T6xkBnTXz7B0 2015/06/14(日) 15:11:34.31 ID:9Ob0dyvk
アンパンマン、新しい顔ができたよ!!!

メモリ上の仮想ファイル操作(v_file)
https://github.com/katahiromz/v_file

文字列を識別するためのswitch文を生成(MakeSwitchForStrings)
https://github.com/katahiromz/MakeSwitchForStrings
0296片山博文MZ ◆T6xkBnTXz7B0 2015/06/16(火) 14:28:55.50 ID:Xu7A0Hie
0297デフォルトの名無しさん2015/09/02(水) 17:12:22.70 ID:DQQjJ9NG
  
0298デフォルトの名無しさん2015/11/28(土) 14:34:07.15 ID:Fi4wDTmy
RARやZipファイルの解凍ライブラリは何がありますか?
スタティックリンク可能なのが良いです
あと、ファイルに書き出さずメモリ内に展開してくれる機能もほしいです
0299デフォルトの名無しさん2015/12/26(土) 03:41:38.86 ID:sxewN+8H
>>241 はC11のGeneric使ってる人居たんだって所だけは興味深いね
0300デフォルトの名無しさん2015/12/30(水) 06:16:03.09 ID:HSsTu4WU
>>299
作り終わってしばらくは自信あったんですが、
時間が経って改め見るとここの人たちが言うようにあまり便利な代物ではなかったですね
ライブラリ制作むずかしいです
0301デフォルトの名無しさん2016/01/06(水) 12:23:59.24 ID:7f9jZCuf
>>300
それが解っただけでも成長だよ
無理せず頑張れ
0302デフォルトの名無しさん2016/01/08(金) 22:06:12.15 ID:2qKIN/Bt
>>301
はい
ありがとうございます
0303デフォルトの名無しさん2016/04/05(火) 02:46:14.53 ID:2X2ng6yq
age
0304デフォルトの名無しさん2016/05/16(月) 18:32:27.81 ID:PpqHj2Tc
boostいいよね
0305デフォルトの名無しさん2016/07/04(月) 11:38:42.52 ID:wohCeOEw
pocoもあるよ
0306デフォルトの名無しさん2016/07/04(月) 13:45:26.88 ID:Z4HAFPPM
coolか
0307デフォルトの名無しさん2016/08/21(日) 00:07:30.55 ID:s2xwnKiZ
ライブラリ探すときってどう探すのが良いんかね?
素人に教えてくだされ
0308デフォルトの名無しさん2016/08/21(日) 02:42:05.09 ID:lsHNIuDO
とりあえずgithubとsourceforgeを漁る
0309デフォルトの名無しさん2016/08/21(日) 02:50:58.25 ID:pfepwF/n
ググる
0310デフォルトの名無しさん2016/08/21(日) 10:44:40.41 ID:ONJlbRqy
しかないなぁ
03113072016/08/22(月) 21:22:02.87 ID:OjHIFgr+
レスサンクス
片っ端から漁ってみようかな

よく使われるものをまとめたwikiとかあればいいのになぁ
0312デフォルトの名無しさん2016/08/22(月) 21:48:55.22 ID:ZPxXQ162
よく使われるならググったらすぐ出るでしょ
0313デフォルトの名無しさん2016/08/22(月) 21:54:11.15 ID:S7EK7X08
然り
0314デフォルトの名無しさん2016/08/22(月) 21:58:32.54 ID:npgbUrT6
情弱なんだろ
0315デフォルトの名無しさん2016/08/22(月) 22:17:24.53 ID:ehbr7t6m
かわいそー
0316デフォルトの名無しさん2016/08/22(月) 22:38:29.52 ID:npgbUrT6
(プログラム開発は無理)
0317デフォルトの名無しさん2016/08/22(月) 22:59:55.07 ID:EtOaB7dZ
Googleってホントに公平なのかな? 自分で公開してると疑念がわいてくるぞ
0318デフォルトの名無しさん2016/08/22(月) 23:10:51.24 ID:ZPxXQ162
>>317
よく使われてないんだろ?
よく使われてるのにGoogleで出てこない!っていうなら言ってることは解る
0319デフォルトの名無しさん2016/08/22(月) 23:25:27.99 ID:JyyoV7BQ
>>317
AdWordsやSEOなどを学べば検索ランキングの仕組みがわかると思う
0320デフォルトの名無しさん2016/08/23(火) 08:46:13.03 ID:uPhg+qti
>>317
金つめば検索上位に来ますって商売じゃなかったっけ?
0321デフォルトの名無しさん2016/08/23(火) 12:30:52.28 ID:82e1JvbW
>>320
それを商売にしてるのはGoogleではない
0322デフォルトの名無しさん2016/08/29(月) 00:41:37.27 ID:fth/j43y
え?
wiki あるだろ?
0323デフォルトの名無しさん2016/10/01(土) 12:46:16.58 ID:dfnenJuX
保守
0324デフォルトの名無しさん2016/11/03(木) 19:28:15.81 ID:vnuawPe0
class を使うだけで
中身は標準Cのままなんて使い方はやっぱだめなの?
0325デフォルトの名無しさん2016/11/03(木) 20:06:29.74 ID:T3nfQxtH
理由があるのであれば
0326デフォルトの名無しさん2016/11/03(木) 20:30:34.05 ID:vnuawPe0
なんていうか、便利なライブラリ使ってしまうより自分で作った方が
面白いからかな・・・
職業にするならそれじゃダメなんだろうけど・・
0327デフォルトの名無しさん2016/11/04(金) 00:45:19.83 ID:6Uh6B4Og
趣味の楽しいことを否定することは誰もできないぜ
ただ俺の場合だとc++機能のつまみ食いが楽しくて(楽できて)やめられなくなっちゃった
0328デフォルトの名無しさん2016/11/04(金) 01:00:25.40 ID:ATlzIavb
自分の手の届かないブラックボックスのコードは仕事では使えない
0329デフォルトの名無しさん2016/11/04(金) 12:39:33.09 ID:lX4+FIXr
趣味ならいいでしょ。
でもやり始めるとどんどんc++のコードになっていくと思う。
c++11は色々便利だし。
0330デフォルトの名無しさん2016/11/04(金) 20:02:19.37 ID:CUjt06/h
C++02 と C++11 の間隙を飛び越える方法を教えてください
0331片山博文MZ ◆T6xkBnTXz7B0 2016/11/04(金) 21:53:57.71 ID:JWDjY2VB
>>330
今、unboostという互換性ライブラリを作ってるから待っててね。
0332デフォルトの名無しさん2016/11/05(土) 00:11:14.56 ID:DL4mqWsO
boostじゃだめすかw
0333デフォルトの名無しさん2016/11/10(木) 15:52:46.33 ID:nmccOsUf
>>331
名前はturbo boostにしようや
0334デフォルトの名無しさん2016/11/10(木) 16:27:28.79 ID:nWtoC1jV
pascalになったでござる
0335片山博文MZ ◆T6xkBnTXz7B0 2016/11/11(金) 18:46:29.16 ID:X9bDlJ5d
>>333
名前は変えないよ。
気に入ってるもん。
0336デフォルトの名無しさん2016/11/15(火) 11:48:34.39 ID:eHQzqCjm
教えてください。
古いパソコンからパラレルプリンタで印刷しているのですが、そのデータを最近のPCに受信し、画像化を行いたいです。
RS232cに変換して他のPCにデータを受信できるところまでは来ました。
RS232cで受信した印刷データを画像化するためのライブラリもしくは方法など知っている方、おられないでしょうか?
なお、ライブラリは有償・無償どちらでも問題ございません。

需要のない質問かもしれませんが、何卒よろしくお願いいたします。
※古いパソコンからパラレル信号までは変えることが出来ません。
0337デフォルトの名無しさん2016/11/15(火) 12:30:56.28 ID:9SsXmVK+
あるわけないだろう。プリンタのコマンドを解釈するんだろうw
0338デフォルトの名無しさん2016/11/15(火) 12:48:32.13 ID:4QSE1fRA
>>336
せめて送り側が Windows なら 出力先を EMF 形式のファイル出力に変えてなんとか出来るけど
あるいは PDFやPostScript 形式 …も多分ついてないだろう

本気でやるならプリンタドライバが内部でやってるようなことを
自力で解析して復号となる そのプリンタの機種ごとの専用ツールとなる
03393362016/11/15(火) 13:27:31.85 ID:eHQzqCjm
>>337,338
そうですか・・・
プリンタのコマンド解析となるとちょっと心が折れそうですorz
何か良い方法があれば・・・|д゚)
0340デフォルトの名無しさん2016/11/15(火) 13:57:00.67 ID:4QSE1fRA
・そのプリンタの開発者用マニュアル(制御コード解説入り)をもらってくる
・プリンタ出力の内容は制御コード(メインは単純な描画命令)の羅列なので解析する
・アプリの画面なりプリンタイメージなりに描画命令をエミュレートする

工数とやる気があれば言うほど難しくないはず
試しに1ページ出力して解析できるかやってみるといいんじゃね
0341デフォルトの名無しさん2016/11/15(火) 14:47:30.53 ID:9SsXmVK+
>>339
プリンタの機種名は?
0342デフォルトの名無しさん2016/11/15(火) 14:56:38.40 ID:pY5YUGJg
これに答えてやってやれよ
http://itest.2ch.net/test/read.cgi/news4vip/1479189054/l50
0343デフォルトの名無しさん2016/11/15(火) 15:01:31.08 ID:9SsXmVK+
しるかぼけ
0344デフォルトの名無しさん2016/11/15(火) 15:08:19.56 ID:USeI/jnx
ははは
0345デフォルトの名無しさん2016/11/15(火) 15:14:44.43 ID:DuXtNH0u
お願いいたします
0346デフォルトの名無しさん2017/01/21(土) 13:25:41.17 ID:dThE4/1u
boostでいい
0347デフォルトの名無しさん2017/03/22(水) 20:21:34.61 ID:Z7WA23Z2
新着レスの表示
レスを投稿する