タグ

c++に関するtk60qtのブックマーク (6)

  • CMakeでデフォルトのコンパイラを書き換える微妙な方法 - あさっては曇りのち晴れ

    あけましておめでとうございます。 年が明けて2週間ほど経ちまして、今年最初の更新はまたしてもCMakeネタです。以下言語はC++を例としておりますのであしからず。 さて、コンパイラなんぞはよしなに設定してくれるCMakeですが、時にそれが気に入らない場合もあります。例えば… Macのg++は古いのでというかC++11使いたいのでclang++がいい スパコン等でg++じゃなくてベンダさんが指定してるコンパイラを使いたい なんかg++ディスってるみたいに見えますがそんなことはないです。(メッセージはclangの方が親切だけどこないだ試したら最適化能力はg++の方が高かった。) で、普通の方法その1。CMake叩くときにセットします。 cmake -DCMAKE_CXX_COMPILER=clang++ いちいちそんなのタイプしてらんないよ。シェルの履歴使…ゲフンゲフン… では普通の方法その2

    CMakeでデフォルトのコンパイラを書き換える微妙な方法 - あさっては曇りのち晴れ
  • gccで Wall & Wextra を使っても有効にならない警告 - Qiita

    gccで-Wall -Wextraを付けてもなお有効化されない警告オプションがあるそうなので、ドキュメントを読んでその効能を簡単に調べた。 なお、これらのオプションの中にはfortran、Objective-C用のものもあるようだが、それらについては説明を省く。 検証環境: gcc (Rev3, Built by MSYS2 project) 5.2.0 (やや特異な環境なのでLinuxなどの一般的な環境とは状況が違うかもしれない) 参考: https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html https://gcc.gnu.org/onlinedocs/gcc/C_002b_002b-Dialect-Options.html https://gcc.gnu.org/onlinedocs/gcc/Objective-C-and-Ob

    gccで Wall & Wextra を使っても有効にならない警告 - Qiita
    tk60qt
    tk60qt 2015/12/17
  • Python Speed - www.peignot.net

    多くの人々が頻繁にPythonプログラムの実行速度を心配しています。でもPythonを使わないと、堪らないくらいパフォーマンスのロスがありますよね? 中には「なんだ、インタプリタのスクリプト言語か、まるっきり遅いや」なんて結論づける人もいます。その一方で、Pythonを実際に試してみて、十分な実行効率をもっていることに気づいた人もいます。もちろん、時にはとっても遅いプログラムができあがることもあります。 なぜ素のスピードが重要か? あるいは重要でないか?多くの人が必要以上に速度に取りつかれていて、この種の問題ではCが優れた実績を示していることから、(Cが)全ての面で優れた言語であると考えています。他の人々は「開発の速度」がより重要で、Pythonを選ぶのはそのような時に限り、まあそれなりの速度だろうと考えています。そして頻繁に、Pythonのコードが期待以上の速度で動いていることに彼らは驚

  • CUDA6のNSight Eclipse EditionでCUDAのリモート開発を試す - Qiita

    時間の4月16日にリリースされたCUDA6の記事を読んでいたらRemote Development with NSight Eclipse Editionというとても気になるものが書かれていたので試してみました。 *編集と実行、デバッグに関してはCUDA6からではなく前のバージョンからもできるようです。 検証環境 Local : OS: Ubuntu 13.04 (VMWare上) CUDA: 6.0 (ドライバーはインストールしていない) Remote : OS: CentOS6 CUDA: 6.0 ローカル、リモートともに、PATHとLD_LIBRARY_PATHは通してあります。 NSightの起動 ローカル環境でNSightを起動します。パスが通してあるなら以下のコマンドで起動できます。 bash $ nsight プロジェクトのRemote環境の設定 Remote環境の設定は

    CUDA6のNSight Eclipse EditionでCUDAのリモート開発を試す - Qiita
  • 文字列を全て大文字(小文字)に変換したい - My Life as a Mock Quant

    時折ド忘れするのでメモ。 要するにtransform + toupper(tolower)の組み合わせが一番楽に出来るぞと。 #include <iostream> #include <string> #include <algorithm> int main() { std::string x("abCdef"); std::transform(x.begin(), x.end(), x.begin(), ::toupper); std::cout << x; return 0; } 実行結果 ABCDEF

    文字列を全て大文字(小文字)に変換したい - My Life as a Mock Quant
    tk60qt
    tk60qt 2014/11/04
    std::transform(x.begin(), x.end(), x.begin(), ::toupper);
  • 時間の計測 - C言語 - 碧色工房

    プログラムの課題などで実行速度を向上するにはどうしたらよいか? なんて問題が出されることがあります。 そんな時実際どれくらい時間がかかっているのかを測ってみたくなります。 ベンチマークソフトのように処理速度の計測なんかをできたら面白いかもしれません。 そこで、時間の測り方を書いてみたいと思います。 まず、時間関係の関数を使うには time.h というヘッダファイルをインクルードする必要があります。 こいつの中身を一度見ておいたほうがいいでしょう。 Windows の Visual C++ だと C:\Program Files\Microsoft Visual Studio\VC98\Include にあります。 VineLinux の場合は /usr/include/ にありますが、 内部で /usr/include/bits/ にある time.h をインクルードしているので二つとも見

    時間の計測 - C言語 - 碧色工房
    tk60qt
    tk60qt 2014/10/05
    "豆知識:型名で~_t とついているものは typedef を使って定義されているという意味です"
  • 1