トップページ⇒tech
1001コメント267KB

スレ立てるまでもない質問はここで 126匹目

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん2013/03/17(日) 21:15:03.90
質問する前にGoogleで検索しましょう。http://www.google.co.jp
プログラム・ソフトの使い方は PC 初心者板やソフトウェア板へ。
ウイルス、ハッキング・クラッキングを求めるような発言は禁止です。
Javascript は Web 制作板、CGI は Web プログラミング板へ。
業界談義、愚痴はプログラマ板へどうぞ。
ゲーム関係の話題はゲーム製作板へどうぞ。
ネタ、板とは関係の無い話題はご遠慮ください。

前スレ
スレ立てるまでもない質問はここで 125匹目
http://toro.2ch.net/test/read.cgi/tech/1361608847/
0159デフォルトの名無しさん2013/03/26(火) 23:29:55.46
「Windows と Macintosh は、通常、Shift-JIS を使っています」
文字化け(機種依存文字)
ttp://www.geocities.co.jp/SiliconValley-SanJose/5148/moji/
2000/10/01
0160デフォルトの名無しさん2013/03/26(火) 23:30:51.12
>>156
SJISと一口にいっても
http://ja.wikipedia.org/wiki/MacJapanese
0161デフォルトの名無しさん2013/03/26(火) 23:32:59.17
せめてユニコード系だけにしてほしいわ
もうガラパゴス文字コードやめてくれ
0162デフォルトの名無しさん2013/03/26(火) 23:35:25.56
今のMacは大体UTF-8
0163デフォルトの名無しさん2013/03/26(火) 23:41:04.68
v8組み込むために情報を集めています。
v8のバージョンは3.17.15.2、使用コンパイラはVC2012です。

ttp://mattn.kaoriya.net/software/lang/c/20110325015245.htm
ttp://d.hatena.ne.jp/tossy-2/20090123/1232653840
や他のサイトで解説されているように、MakeWeakを使用してデストラクタを起動させようとしたのですが、
v8::Persistent<v8::Object> holder = v8::Persistent<v8::Object>::New(thisObject);
※ holder.MakeWeak(foo, Foo_Dispose);

global-handles.ccにある、 GlobalHandles::MakeWeak内の
ASSERT(near_death_callback != NULL);で引っかかってしまいます。

※で呼び出しているMakeWeakが、そもそも第四引数をNULLとして呼び出しているので、
どうあがいてもアサーションには引っかかってしまうようになっていると思うのですが、
どうするべきなのか、ご存じの方が居ましたら教えて下さい。
0164デフォルトの名無しさん2013/03/26(火) 23:43:28.34
こんな感じになっています。
void GlobalHandles::MakeWeak(Object** location,
void* parameter,
WeakReferenceCallback weak_reference_callback,
NearDeathCallback near_death_callback) {
ASSERT(near_death_callback != NULL);
Node::FromLocation(location)->MakeWeak(this, parameter, weak_reference_callback, near_death_callback);
}
void V8::MakeWeak(i::Isolate* isolate,
i::Object** object,
void* parameters,
WeakReferenceCallback weak_reference_callback,
NearDeathCallback near_death_callback) {
ASSERT(isolate == i::Isolate::Current());
LOG_API(isolate, "MakeWeak");
isolate->global_handles()->MakeWeak(object,
parameters,
weak_reference_callback,
near_death_callback);
}
template <class T>
void Persistent<T>::MakeWeak(void* parameters, WeakReferenceCallback callback) {
Isolate* isolate = Isolate::GetCurrent();
V8::MakeWeak(reinterpret_cast<internal::Isolate*>(isolate),
reinterpret_cast<internal::Object**>(**this),
parameters,
callback,
NULL);
}
v8::Persistent<v8::Object> holder = v8::Persistent<v8::Object>::New(This);
holder.MakeWeak(obj, dispose);
0165デフォルトの名無しさん2013/03/27(水) 03:12:44.01
知り合いでソフト開発関連の会社に勤めてる人がいるんですけど
その人にループはi++じゃなくて++iが正しいみたいなことをいわれたのですが
その理由がなんだったのか忘れてしまいました
++iが正しい理由を教えてください
0166デフォルトの名無しさん2013/03/27(水) 04:00:43.22
正しいと言えるのは意図に沿う場合のみ
意図に沿わなければ間違い
0167デフォルトの名無しさん2013/03/27(水) 04:37:57.77
>>165
なんでそんなゴミグラマの言うことを間に受けるの?
i++と++iの違いを知ってればそのゴミグラマがマジモンのクズだって分かるよね?
0168デフォルトの名無しさん2013/03/27(水) 07:09:16.73
for (i=0; i<10; i++) {}
のi++のことならi++も++iも違いないよね?
0169デフォルトの名無しさん2013/03/27(水) 07:16:45.09
iがイテレータなら++iの方が基本的に実行効率は良い
糞コンパイラだと最適化が糞でiがただのintでも++iの方が効率の良いコードを吐くかもしれない

しかし正しい正しくないという話ではないな
0170デフォルトの名無しさん2013/03/27(水) 07:21:30.73
>>168
a[i] を参照するような場合は、0オリジンだとむしろ ++i は for(i= -1; ...と
なって使い難いのではないか。
01711682013/03/27(水) 07:27:48.55
ごめん。a[++i]の場合だね。なかったことにしてください。
0172デフォルトの名無しさん2013/03/27(水) 07:28:06.40
動作が違うのならどっちが正しいとか自然に決まるような
01731712013/03/27(水) 07:29:11.45
大変失礼しましたw 私は 168 ではなくて 170 でした。
0174デフォルトの名無しさん2013/03/27(水) 08:05:25.59
適当な疑似コードで書くと以下のイメージになるので、i++はtmpの分だけ効率が悪いと聞いたことはある
でも、それぞれの特性を知って使い分けろという話で、他の人も言ってるように正しいとか正しくないということではないと思う
[i++]
tmp=i
i = i+1
return tmp

[++i]
i = i+1
return i
0175デフォルトの名無しさん2013/03/27(水) 10:12:13.40
i++と++iで実装が違うから
phpもjsも++iのほうが早い
0176デフォルトの名無しさん2013/03/27(水) 10:15:00.00
へー
じゃあC++も++Cっていう名前にすればよかったのにー
0177デフォルトの名無しさん2013/03/27(水) 10:32:28.30
効率で決めたわけじゃないのだ
0178デフォルトの名無しさん2013/03/27(水) 12:04:14.30
効率の悪い言語だしいいじゃないか
0179デフォルトの名無しさん2013/03/27(水) 12:28:40.12
効率最優先で設計されてるのに効率が悪い?
0180デフォルトの名無しさん2013/03/27(水) 12:59:15.37
何の効率?
0181デフォルトの名無しさん2013/03/27(水) 14:01:48.11
CでもC++の組み込み型でも、値を利用しないで副作用だけ利用するならi++でも++iでも違いはない。
しかし、C++でクラスのオペレータオーバーライド関数を作ってみれば分かるが、i++と++iでは>174の
ように違う実装になってくる。従って、C++では++iと書く方が理に適っていると言える。
0182デフォルトの名無しさん2013/03/27(水) 14:07:37.96
でも読みにくくなる
0183デフォルトの名無しさん2013/03/27(水) 14:24:12.14
Cのみなら、うるさくいうひとがいないから心配ない。
C++の秀才が、衒学的に指摘するから、まどわされるのだ
0184デフォルトの名無しさん2013/03/27(水) 14:28:08.15
↓この本に、fo(;;)も、i++もでてくる。問題ない。

「Cで書いたプログラムがたいてい高速に動作する(中略)
Cはカミソリのように切れ味鋭いツール」

『プログラミング作法』p.105 ブライアン・カーニハン、ロブ・パイク
0185デフォルトの名無しさん2013/03/27(水) 14:28:37.20
i++って書くなっ!!!!!!!!!!!!!
0186デフォルトの名無しさん2013/03/27(水) 14:28:38.48
>>181
> CでもC++の組み込み型でも、値を利用しないで副作用だけ利用するならi++でも++iでも違いはない。
副作用だけを利用する場合でも、値として評価されるから、i++と++iでは違うのでは?
0187デフォルトの名無しさん2013/03/27(水) 14:29:35.37
for(;;)かwhile(true)かの話
0188デフォルトの名無しさん2013/03/27(水) 14:33:04.94
forは0から1増やしていくのではなく
マックスサイズから0に向かって減らしていくのが早いのです
0189デフォルトの名無しさん2013/03/27(水) 14:38:38.12
http://i.imgur.com/uZZrxkH.jpg?1
このhead:tailってのがよくわからん
0190デフォルトの名無しさん2013/03/27(水) 14:39:08.68
>>186
値を利用しないなら、単に捨てられるから同じことになる。
違う例を思いつかないのだが何かあるかな?
0191デフォルトの名無しさん2013/03/27(水) 14:46:36.95
>>189
リストの先頭の要素がhead、リストのそれ以外の部分がtail。
つまり、C++で書けば次の関数のような定義。
int length(std::list<...> body)
{
if (body.empty()) return 0;
body.pop_front();
return 1 + length(body);
}
0192デフォルトの名無しさん2013/03/27(水) 14:53:41.54
>>191
なるほどな C++弄ったことないからあれだけど
回答はこんな感じでいいの?
VL>deflength::[reverse]
VL>deflength([])=0
VL>deflength(head:tail)=1+length(tail+r)
0193デフォルトの名無しさん2013/03/27(水) 14:54:06.57
>>190
同じ事になるかならないかは、処理系で異なる気がするが
0194デフォルトの名無しさん2013/03/27(水) 15:20:28.25
def reverse :: [_] -> [_]
def reverse [] = []
def reverse (Head:Tail) = reverse (Tail) ++ [Head]
0195デフォルトの名無しさん2013/03/27(水) 15:43:25.27
>>192
いんや。def lengthでlength関数が定義できるんでしょ?
いくらdef lengthって書いてもreverse関数は定義できないよ。
0196デフォルトの名無しさん2013/03/27(水) 15:52:14.41
てかHaskell辺りの関数型言語の処理系(ghcとかね)を自宅で使ってみたらいいと思うよ
多少記法が違うから脳内変換は要るが、合ってるも間違ってるも実験できるし
0197デフォルトの名無しさん2013/03/27(水) 17:59:05.00
>>163 馬鹿には無理
0198デフォルトの名無しさん2013/03/27(水) 18:54:23.97
効率厨乙
01991652013/03/27(水) 21:11:38.09
お答えくださりありがとうございました。
正しい正しくないかではなかったんですね。
自分が何か勘違いをしていたかもしれません。
参考になるレスばかりで感謝です。
0200デフォルトの名無しさん2013/03/27(水) 22:44:38.51
設計の話ですが
たとえば画像変換プログラムを作るとして、
A.入力形式から一旦中間形式にしてその後出力形式に変換
B.入力形式から直接出力形式に変換
Aだと
・サポートする形式の情報を充分格納できる中間形式にする必要がある
・サポートする形式が増えても中間形式に変換するだけで対応可能
・Bに比べて処理速度およびメモリ使用量は不利になる
Bだと
・Aに比べて処理速度およびメモリ使用量は有利になる
・サポートする形式を増やす度にN-1個の変換処理を追加する必要がある
どちらの方法がセオリーなんでしょう
あるいはほかに方法等あれば教えてください
0201デフォルトの名無しさん2013/03/27(水) 23:04:36.09
>>158
jisx0213でした。失礼
0202片山博文MZパンク ◆0lBZNi.Q7evd 2013/03/27(水) 23:08:31.00
ビットマップ画像は、インデックスカラーとフルカラーに大別できる。
インデックスカラーは色を限られたパレットで管理する。
フルカラーは比較的メモリを食うが滑らかな色彩加工ができる。
環境や目的によって使い分けるのがベスト。写真の加工ならフルカラーがいい。
0203デフォルトの名無しさん2013/03/27(水) 23:19:29.80
そういう話じゃねぇです。
0204デフォルトの名無しさん2013/03/27(水) 23:26:37.93
>>200
それぞれの利点が分かっているのだろう?
ならあとは、その利点が必要とされている方を採用するのがセオリーだと思うが。
0205デフォルトの名無しさん2013/03/27(水) 23:26:40.76
まず、直接変換だけをするなら、N個にひとつ追加したら、2N通りの変換ロジックの追加が
必要だよ。
それが現実的なのかどうかを考えるとこから始めたら?
0206デフォルトの名無しさん2013/03/27(水) 23:36:51.58
>>197
なるほど、バカには答えられないと。
マジレスすると、そのAPIはDeprecated
0207デフォルトの名無しさん2013/03/27(水) 23:44:40.66
>>202
ばか乙
0208デフォルトの名無しさん2013/03/27(水) 23:51:43.55
>>200
一般にはJpegやpngなど画像の入出力は既存ライブラリをブラックボックスとして使うので、中間形式を経ずに変換処理とか考えられない
JavaやC#など標準ライブラリに画像APIがある場合、中間形式はシステムに準じたものが用意されてるし、使わざるを得ない

ただし、質問の意図が、画像ライブラリを自分で簡単に書けるスキルがあって最高の速度が欲しいなどの前提があるなら、お好きにとしか言いようがない
0209デフォルトの名無しさん2013/03/28(木) 00:00:44.41
現在30歳のフリーターなんですがPGになろうと勉強していて
基本情報とJavaで商品データの入力と照合、配送履歴やなどをする簡単なアプリを作れるぐらいなんですが、
次に習得した方がいい技術や資格はなんでしょうか
0210片山博文MZパンク ◆0lBZNi.Q7evd 2013/03/28(木) 00:05:28.09
>>209
SQL、データベース、バーコード
0211デフォルトの名無しさん2013/03/28(木) 00:15:32.22
容姿
他人が君と接してて内心気味悪がらない事
0212デフォルトの名無しさん2013/03/28(木) 02:58:02.94
お前らC++を使えるようになるためにどんなことをしましたか?
どんな練習プログラム作った?
0213デフォルトの名無しさん2013/03/28(木) 03:04:32.13
>>212
がっこの課題
0214デフォルトの名無しさん2013/03/28(木) 05:01:00.32
>>212
ゲーム

マルチスレッドとDirectXとソケットも混ざって阿鼻叫喚の地獄絵図になって結局完成しなかったけど
半年間の悪戦苦闘で気が付いたらC++のスキルが上がってた
0215デフォルトの名無しさん2013/03/28(木) 07:14:03.90
俺もゲームだな
鉄板の題材だと思う
0216デフォルトの名無しさん2013/03/28(木) 07:37:34.25
ゲームが作れれば業務系とか簡単だからな
0217デフォルトの名無しさん2013/03/28(木) 08:31:17.53
逆にC++ってゲーム以外に何に使うの?
現状で手動でメモリ管理が必要になるようなリアルタイム性と
OOPなどの抽象度を両立させたい用途が他に思いつかない
0218デフォルトの名無しさん2013/03/28(木) 08:47:25.19
>>217
衝撃の指摘だな。
0219デフォルトの名無しさん2013/03/28(木) 09:33:01.59
Androidアプリの開発に興味がある者です。
自分なりに情報を集めた結果、Javaというプログラミング言語で開発されていることが分かりました。
そこで質問なのですがJavaとAndroid、どちらの入門書を購入する方が良いのでしょうか?
0220デフォルトの名無しさん2013/03/28(木) 09:34:25.72
オブジェクト指向のプログラミング言語触ったことないなら両方ないと出来ないだろうね
Androidの本には申し訳程度にしかjavaの解説は載ってない
0221デフォルトの名無しさん2013/03/28(木) 09:43:24.53
Javaの名前を知らなかったような口ぶりだと色々と難しいかもねえ・・・
本じゃなくて1年は頑張る覚悟ありますかとか英語読めますかとかそういうことを聞きたくなる世界
02222192013/03/28(木) 13:01:35.32
なんだか異常に難しそうですね…。
やっぱりJavaの基礎からじっくり勉強した方が良いのでしょうか?
0223デフォルトの名無しさん2013/03/28(木) 13:10:11.39
そらそうよ
クラス 継承 インターフェイスとか知らないとAndroidはさっぱりだろうな
0224デフォルトの名無しさん2013/03/28(木) 13:16:56.34
phpでPDO使ってMySQLいじってる初心者です

指定の行の取得ってどうやるんでしょうか

$stmt = $dbh->prepare('select xxx from xx', array(PDO::ATTR_CURSOR => PDO::CURSOR_SCROLL));

$stmt->execute();
$row = $stmt->fetch(PDO::FETCH_ASSOC, PDO::FETCH_ORI_ABS, $num);
ってやっても最初の行しか取れなくて困ってます
0225デフォルトの名無しさん2013/03/28(木) 13:22:58.93
>>224
一生困ってろ
0226デフォルトの名無しさん2013/03/28(木) 13:44:51.76
http://kohada.2ch.net/test/read.cgi/php/1363698829/219
0227デフォルトの名無しさん2013/03/28(木) 13:48:53.02
>>224
それphpとかpdoとかの話じゃなくてsqlの話
0228デフォルトの名無しさん2013/03/28(木) 14:10:48.69
>>227
SQL って
select xxx from xx
だけじゃないの?
0229デフォルトの名無しさん2013/03/28(木) 14:12:22.26
ハ?
0230デフォルトの名無しさん2013/03/28(木) 14:22:25.68
>>228
貴様はsqlを初歩から勉強してこい
0231デフォルトの名無しさん2013/03/28(木) 14:28:07.19
初心者はかいとうするな
0232デフォルトの名無しさん2013/03/28(木) 14:32:44.75
webプログラミング板のphpスレはwindowsにxampp入れてるだけのカスしかいないから高等な話ができない
例えばphp5.5の新機能の話などすることがない
Rubyでいう初心者スレと高等な人が集まるスレに分かれてる感じが理想
phpスレをこの板に立ててもいいですか?
0233デフォルトの名無しさん2013/03/28(木) 14:35:07.25
好きにしろよ
0234デフォルトの名無しさん2013/03/28(木) 15:20:21.11
>>211
漏れもそこに気を付けて採用はクリア出来たんだけど
毎日同じ服で通ってたらばれた
0235デフォルトの名無しさん2013/03/28(木) 15:33:03.23
>>232
phpの高等な話とか冗談はやめてくれよ
お前が上から見下ろしてる連中とお前は同レベルなのにさっさと気づいて
糞スレ立てないでwebprog板に帰ってね
0236デフォルトの名無しさん2013/03/28(木) 15:35:59.95
なぜそこでPHPから足を洗おうと思わなかったのか
そこが糞が糞たる所以
0237デフォルトの名無しさん2013/03/28(木) 16:12:44.78
え?PHPはwebの王様ですよ
私はね、もっと拡張とか内部構造とか深い話がしたいのだよ
>>235のようなミーハー君には付いていけないだろう
0238デフォルトの名無しさん2013/03/28(木) 16:19:58.11
2chに何求めてだ
0239デフォルトの名無しさん2013/03/28(木) 16:34:58.21
>私はね、もっと拡張とか内部構造とか深い話がしたいのだよ
これは笑うところか・・・
02402192013/03/28(木) 16:58:10.19
皆さん返答ありがとうございました。
より深くAndroidを理解するためにもJavaの勉強から始めたいと思います。
0241デフォルトの名無しさん2013/03/28(木) 16:59:03.50
androidアプリの作り方を解説した本読めよ
0242デフォルトの名無しさん2013/03/28(木) 17:20:11.18
おまえこそ空気読めよ
0243デフォルトの名無しさん2013/03/28(木) 19:03:20.94
>>239
君は言語の実装自体には興味ないんだね
言語を作ることすらしたことないのかな
0244デフォルトの名無しさん2013/03/28(木) 19:36:34.95
>>243
人を責める前に自分の作った言語を披露する方が先というのが筋じゃないのか
0245デフォルトの名無しさん2013/03/28(木) 19:56:48.13
おいばかやめろ
そいつC言語を作ったやつだぞ
0246デフォルトの名無しさん2013/03/28(木) 21:28:16.66
( ゚Д゚)ハァ?
0247デフォルトの名無しさん2013/03/28(木) 21:46:47.13
言語を作ることすらしたことないのかな(キリッ

ひさびさにアレな人が現れたなw
0248デフォルトの名無しさん2013/03/28(木) 22:09:52.98
これまたでかい釣り針が下りてきたな
0249デフォルトの名無しさん2013/03/28(木) 22:10:13.62
#をシャープと呼んでも意味は伝わる
ただ、厳密には正しくないから呼びたくない
井げたと呼ぶのはなんか違う気がする
何か納得できる呼び方(読み方)はないものか
0250デフォルトの名無しさん2013/03/28(木) 22:12:58.22
こんな天気
0251デフォルトの名無しさん2013/03/28(木) 22:26:50.31
http://www.json.org/object.gif
http://www.json.org/string.gif
この表現法方なに図て呼ぶの?
0252デフォルトの名無しさん2013/03/28(木) 22:28:16.56
BNFだっけ
0253デフォルトの名無しさん2013/03/28(木) 22:32:51.75
NTFS
0254デフォルトの名無しさん2013/03/28(木) 22:34:23.52
>>217
映像処理
0255デフォルトの名無しさん2013/03/28(木) 22:45:11.49
ソーシャルゲーム開発会社に就職する場合って何ができればいいですか?
0256デフォルトの名無しさん2013/03/28(木) 22:47:00.44
NTFS
0257デフォルトの名無しさん2013/03/28(木) 22:58:49.49
>>255
ゲーム開発の基礎、通信の基礎、サーバー運用、2D/3Dグラフィックス、アニメーション、データベース
0258デフォルトの名無しさん2013/03/28(木) 23:01:46.75
>>251
syntax diagram
■ このスレッドは過去ログ倉庫に格納されています