- 1 名前:デフォルトの名無しさん [2014/07/31(木) 19:14:13.79 ID:17Xd3Yqq]
- エスケープシーケンスやWin32APIなどの環境依存なものでもOK。
ただしその場合、質問者は必ず環境を書きましょう。 ※sage禁止です(と代々スレに書いてありますが自己判断で)。 ◆ソースのインデントについて 半角空白やTABでのインデントはスレに貼ると無くなります。 そのため、アップローダーに上げるのも手ですが直接貼る場合は、 全角空白か に置換すると見栄えだけはよくなります。 前スレ 【初心者歓迎】C/C++室 Ver.91【環境依存OK】 peace.2ch.net/test/read.cgi/tech/1400394837/ 【アップローダー】(質問が長い時はココ使うと便利) codepad.org/ (コンパイルもできるし出力結果も得られる[]privateをチェック) ideone.com/ (時間帯によってはcodepadが重い事があるのでここも利用)
- 288 名前:デフォルトの名無しさん [2014/08/17(日) 06:43:50.32 ID:ruDVRpF3]
- windowsAPIでUTF-8は使えるって聞いたことがない。
それだったら、linuxと一緒でwchar_t版が不要だろ。
- 289 名前:デフォルトの名無しさん [2014/08/17(日) 06:46:25.94 ID:ruDVRpF3]
- マイクロソフト純正でないとおもうが。
仮にUTF-8が使えたとしても、ラッパーであってUTF-16LEへ変換して渡してるだろう。 windowsは内部が全世界統一でUTF-16LEだろ。
- 290 名前:デフォルトの名無しさん mailto:sage [2014/08/17(日) 07:09:51.14 ID:2ZZ0upcs]
- ソースコードをどう書くかの話をしているときに
裏での見えないラッパーの話をされても >linuxと一緒でwchar_t版が不要だろ encoding-schemeとencoding-formの区別がつかない人はすっこんでてください
- 291 名前:デフォルトの名無しさん mailto:sage [2014/08/17(日) 13:30:39.71 ID:3OAkF9Uq]
- え?ソースコードのエンコーディングの話してたの?
- 292 名前:デフォルトの名無しさん mailto:sage [2014/08/17(日) 15:12:10.77 ID:H69Yv+5P]
- >>288
Win32(Windows NT)ができた当時はUTF-8なんてなかったんだからしょうがない。 というか、今のようにUTFなんちゃらが乱立する状況なんて想像されていなくて "UNI"CODEで文字コード問題は解決されると信じられていた時代だった。 #漢字Unificationの問題は別として。
- 293 名前:デフォルトの名無しさん mailto:sage [2014/08/17(日) 23:26:46.65 ID:3BRjkNZj]
- charと竹中直人は兄弟だと思っていた1977年の春。
- 294 名前:デフォルトの名無しさん mailto:sage [2014/08/18(月) 17:23:56.00 ID:ENGcdXzN]
- std::regexが思っていたより遅いんですが、より速い正規表現での検索を利用したい場合には何を使うといいですか?
grepソフトの検索はすごく速いので、正規表現のコストがこんなに高いとは思ってなかった
- 295 名前:デフォルトの名無しさん mailto:sage [2014/08/18(月) 17:26:46.65 ID:BFPWuSMs]
- 最適化入れてないとかデバッグモードで実行してるとかそういう話じゃないの
- 296 名前:デフォルトの名無しさん mailto:sage [2014/08/18(月) 17:42:45.77 ID:0GH1txVb]
- 何百回も呼ぶような場合はキャッシュというかコンパイルすべきかも
regcomp()
- 297 名前:デフォルトの名無しさん mailto:sage [2014/08/18(月) 18:16:45.57 ID:ENGcdXzN]
- Releaseモードにしたら劇的に速くなった
コンパイルもやってみます
- 298 名前:デフォルトの名無しさん mailto:sage [2014/08/18(月) 21:02:44.92 ID:0GH1txVb]
- いや、解決したならやらんでいい
- 299 名前:デフォルトの名無しさん mailto:sage [2014/08/18(月) 22:01:41.52 ID:uDUM2zni]
- >regcomp()
んなもんは無い。 >コンパイルすべきかも コンパイルするのが>>294に書かれてるstd::regexじゃねーの
- 300 名前:デフォルトの名無しさん mailto:sage [2014/08/19(火) 07:36:05.01 ID:tg7i16ue]
- >>299
> >regcomp() > んなもんは無い。 ググレカス
- 301 名前:デフォルトの名無しさん mailto:sage [2014/08/19(火) 12:02:47.11 ID:F3IU7kyP]
- >>294の質問をしたものだけど標準ライブラリのisupperが遅かったので、
代わりにwchar_tをintにキャストして、0x41〜0x5Aの範囲にあるかを調べる関数を作ったらだいぶ速くなりました これだけで大文字アルファベットを漏れなく拾えるかな? isupperが遅い理由はファセットがどーたらとあったけど、要するにすべての文字コードに対応する作業で遅い?
- 302 名前:デフォルトの名無しさん [2014/08/19(火) 12:32:08.96 ID:qv1p14qX]
- 正規表現の話で無くなってる。
あと文字コードによっては、英文字と2バイト長以上の文字に重複部分あるかもしれない。
- 303 名前:デフォルトの名無しさん mailto:sage [2014/08/19(火) 12:37:35.60 ID:F3IU7kyP]
- 文字列でなく1文字の判定をする部分があって、そこにまで正規表現を使うことはないだろうとisupperも試してみた結果です
日本でUnicode使う分には大丈夫そうかな
- 304 名前:デフォルトの名無しさん mailto:sage [2014/08/19(火) 20:41:30.24 ID:Mliou7o7]
- >>301
ctype.hのisupper()の実装は、配列を引いてand演算するぐらいだから速いと思うけど
- 305 名前:デフォルトの名無しさん mailto:sage [2014/08/19(火) 21:33:22.76 ID:APzI7Yv4]
- >>304
?
- 306 名前:デフォルトの名無しさん [2014/08/20(水) 16:13:47.13 ID:vZ4195p+]
- 列挙体にマイナスの値は許されていますか?
- 307 名前:デフォルトの名無しさん mailto:sage [2014/08/20(水) 16:24:48.87 ID:lf2AdZUe]
- >>306
許されてます。
- 308 名前:デフォルトの名無しさん mailto:sage [2014/08/20(水) 17:06:17.01 ID:cYiGvIKn]
- enum EnumDayo : unsigned long {
AAAA, BBBB, CCCC, }; もおk
- 309 名前:デフォルトの名無しさん mailto:sage [2014/08/20(水) 19:26:51.17 ID:YTuxoJAp]
- staticなメンバ関数内(TimerProcとか)でthisポインタを使うためにSetWindowLongPtr使うってあるけど
thisポインタを保持するstaticなメンバ関数(例えばSaveThis())をTimerProcで呼んでThisポインタ取得でもok?
- 310 名前:デフォルトの名無しさん mailto:sage [2014/08/20(水) 19:44:36.47 ID:lf2AdZUe]
- >>309
そこまでするならシンクルトンにしなよ
- 311 名前:デフォルトの名無しさん mailto:sage [2014/08/20(水) 20:24:01.41 ID:YTuxoJAp]
- 調べてみたらそのまんまだったありがとう
- 312 名前:デフォルトの名無しさん mailto:sage [2014/08/20(水) 21:28:31.99 ID:TfPzovZL]
- いい加減なやり方を教えるなよ
スレッドなりタイマーなり thisを渡せるように設計されてるだろ
- 313 名前:デフォルトの名無しさん mailto:sage [2014/08/20(水) 21:49:29.16 ID:G+JA3SG/]
- windows の話だとして スレッドなら this を渡す機構あり
タイマーは window proc/dialog proc の一部分でしかなく、そのインターフェース上には無い が、渡ってくる window handle や dialog param に this を持ち越す機構がある
|

|