プログラミング日記

 

2014-01-29

[] VS2010ビルドエラー

.NET Framework 4.5.1をインストールしたら、VisualStudio2010のC++で以下のビルドエラーが出た。

>LINK : fatal error LNK1123: failure during conversion to COFF: file invalid or corrupt

.NET 4.5.1をアンインストールして、VS2010を修復したら治った。

Microsoftの環境はバージョンにより依存関係があって結構難しい。

2013-09-20

[] HPの引っ越し

自分のHPを以下に引っ越しした。

さくらインターネットは解約予定。


2013-07-18

[] Harlan


GPUDSL言語。なぜか、文法はSchemeベースらしい。あと、対応OSが、今のところ、MacLinuxしかない。Windowsはいつになるのだ?

GPU言語の流行りは分からないが、これだったら、PyCUDAの方が良いんじゃないのか?

[] C++11のVS2010への対応


cpprefjpに対応状況まとまっているが、std::array、std::for_each、std::tupleを調べてみた。

結果として、VS2010に対応していた!

これで色々出来そう。

#include <iostream>
#include <array>
#include <tuple>

int main()
{
  // 3要素のint型配列を定義し、初期化子リストで初期化
  std::array<int, 3> ar = {3, 1, 4};

  // size()メンバ関数による要素数取得
  for (std::size_t i = 0; i < ar.size(); ++i) {
    ++ar[i]; // operator[]で任意の要素にランダムアクセス
  }

  // イテレータによる要素の横断
  std::for_each(ar.begin(), ar.end(), [](int x) {
    std::cout << x << std::endl;
  });

  // tuple
  auto tupleValue = std::tuple<int, double, double>(10, 15.5, 20.0);
  tupleValue =  std::make_tuple(11, 15.3, 20.2);
  int value1 = std::get<0>(tupleValue);
  double value2 = std::get<1>(tupleValue);
  double value3 = std::get<2>(tupleValue);
  std::cout << value1 << " " << value2 << " " << value3 << std::endl;
}

RiSKRiSK 2013/07/19 15:13 違和感があるのですが、もしかして:

> C++11のVS2010への対応

VS2010のC++11への対応

>結果として、VS2010に対応していた!

結果として、VS2010は(C++11に部分)対応していた!

ということでしょうか。

morchinmorchin 2013/07/25 15:56 RiSKさん、ご指摘ありがとうございます。
その通りです。

2013-06-12

[] ライブラリ作成メモ

foo.dllの作成。

> set path=C:\MinGW_x64\x86_64-w64-mingw32\lib;%path%
> g++ -shared -static-libgcc -std=c++11 *.cpp -o foo.dll

a.exeの作成

> g++ -static-libgcc -std=c++11 -I. foo.dll main.cpp

VCと同様に、gccでもlibを作成してリンクすると思っていたが、直接dllでリンクできるので必要なかった。

2013-05-08

[] メモ

cvs操作のメモ。

  • rollback

cvs update -p -r リビジョン file > file

cvs diff -r 旧リビジョン -r 新リビジョン file

  • log

cvs log file