メモ

メモに全部突っ込んで書いていたら,まさかの「サイズがデカすぎて処理できませんエラー」がサーバから返されてしまった. しょうがないので,C/C++系のトラブルだけこっちに移すことにした.

argcとargv

int main(int argc, char **argv)

sizeof

ダイアログをMFCダイアログから呼び出すと反応が異様に遅い.

:未解決?

CTimeを使わずに時間を取得する

floatとdoubleの違いについて

C++のprivateなポインタ変数をreturnで外に出す

enumの定義方法

実行時にMSVCR80.DLL (MSVCR80D.DLL?) が無いと言われる

ジャンル:OpenCV:未解決?

fatal error C1010: プリコンパイル済みヘッダーの検索中に予期しない EOF を検出しました。

ジャンル:Visual Studio

fatal error C1020: 予期しない #endif です。

ジャンル:Visual Studio

fatal error C1033:

ジャンル:Visual Studio

error C2062: 型 'char' は不要です。

ジャンル:Visual Studio

error C2064: 引数を取り込む関数には評価されません。

ジャンル:Visual Studio

error C2059: 構文エラー : サフィックスが無効です。

 int 3DPoints[200]; // <- 変数名の頭に数字は使えない

ジャンル:Visual Studio

error C2065: 'M_PI' : 定義されていない識別子です。

 #define _USE_MATH_DEFINES  // <-これが一番大事♪
 #include <math.h>
 int main(){
   printf("%f\n", M_PI);
 }

ジャンル:Visual Studio

error C2381: 'exit' : 再定義 ; __declspec(noreturn) が異なります。

error C2679: 二項演算子 '<<' : 型 'const largeNumber' の右オペランドを扱う演算子が見つかりません (または変換できません)。

error C3861: 'min'識別子が見つかりませんでした

error D8016 : コマンド ライン オプション '/GL' と '/ZI' は同時に指定できません

ジャンル:Visual Studio

warning C4390: プロトタイプされている関数が呼び出されませんでした (変数の定義が意図されていますか?)

warning C4819:ファイルは、現在のコード ページ (932) で表示できない文字を含んでいます。

ジャンル:OpenCV:OpenCV 1.1:OpenCV 2.0:OpenCV 2.1:Visual Studio

  1. #pragma warning(disable : 4819)
  2. #include <cv.h>
  3. #pragma warning(default: 4819)

ジャンル:OpenCV:OpenCV 2.2:Visual Studio

warning C4800: 'int' : ブール値を 'true' または 'false' に強制的に設定します (警告の処理)

warning LNK4098: defaultlib '*****' は他のライブラリの使用と競合しています。

ジャンル:Visual Studio

warning MSB8012: TargetPath does not match the Library's OutputFile

0xc0150002 アプリケーションを正しく初期化できませんでした

ジャンル:OpenCV:OpenCV 1.1:Visual Studio

OpenCV 1.1でプロセス(プログラム)が終了しなくなる

ジャンル:OpenCV:OpenCV 1.1:Visual Studio:未解決?

関数を使用しただけで,突然大量の「型が定義されていません」エラーが発生する

ジャンル:Visual Studio

Visual Studio .NETでプロファイラを使う方法

  1. ビルド(B)→ガイド付き最適化のプロファイル(P)→インストルメント(I)を実行
    • リビルドが行われる
    • Debugモードだとerror D8016が出たので無理かも
  2. ビルド(B)→ガイド付き最適化のプロファイル(P)→インストルメントまたは最適化されたアプリケーションの実行(R)
    • アプリケーションが起動するので,適当に動かす(最適化させたい動作がベスト)
    • アプリケーションを終了する
  3. ビルド(B)→ガイド付き最適化のプロファイル(P)→最適化(O)
    • 実行した情報がカウントして統計される
  4. ツール(T)→Visual Studio 2005 Command Promptを実行
  5. コマンドプロンプト上でコマンドを実行
    C:\Program ... \VC\bin>pgomgr /summary XXXXXX\apli.pgd 
    • XXXXXXにはアプリのReleaseフォルダへのパス
    • apliはソリューションの名前
  6. これでこんな表示が出るはず.長いのでリダイレクト推奨
    Microsoft(R) Profile Guided Optimization Manager 8.00.50727.762
    Copyright (C) Microsoft Corporation. All rights reserved.
    
    PGD ファイル: \XXXXXXXX\apli.pgd  11/20/2008 12:54:52
    モジュールの数: 1  関数の数: 389  Arc の数: 1248  値の数: 18
    
    静的命令: 11054  基本ブロック: 1743  平均 BB サイズ: 6.3
    動的命令: 327756730
    
                                         entry  static       dynamic     %     run
    関数名                               count   instr         instr  total   total
    tSubtractAverage                    307200      93     134351620   41.0   41.0
    shift                              1603470      90      44897160   13.7   54.7
    C2TSI::getInnerProductMap              240     181      35021113   10.7   65.4
    tLowPass                            153600     322      34713600   10.6   76.0
    tPadZero                            307200     122      32070160    9.8   85.8
    CTSI::SearchStartAndEnd                960     118      31556620    9.6   95.4
    CTSI::extractRawColumn              307200      29       8908800    2.7   98.1
    CTSI::getNormMap                       480      58       3699360    1.1   99.2
    CTSI::getTimeSpaceImage               1442     357        977770    0.3   99.5
    _cvGetRow                            40560       9        365040    0.1   99.6
    CTSI::loadImageFromImageFile         20164      23        302460    0.1   99.7
    CTSI::loadImageFromImageFile         20164      11        221804    0.1   99.8
    • 右から3列目のdynamic instrが実行回数
    • 右から2列目の%totalがその関数が実行に要した時間
    • 一番右のrun totalが実行時間の累計和
  7. 次回ビルドするときに何か言われることがあるが,プロファイラをしないなら,リビルドを行ってよい.

ジャンル:Visual Studio

FILE*構造体

int fseek(FILE *fp, long offset, int whence);

void rewind(FILE *fp);

FILE* fopen(const char *filename, const char *mode);

コード要素***が読み取り専用であるため、追加と削除操作は出来ません

ジャンル:Visual Studio

コード要素***が読み取り専用であるため、追加と削除操作は出来ません VS2010編

ジャンル:Visual Studio

プロジェクトにクラスの追加を行うとVisutal Studioがフリーズする

ジャンル:Visual Studio

CRとLF

コンソール画面が消えない

ジャンル:Visual Studio

Visual Studio でコマンドラインアプリをデバッグする際,引数を指定する方法

http://tessy.org/wiki/index.php?plugin=attach&pcmd=open&refer=C%2FC%2B%2B%A4%CE%A5%C8%A5%E9%A5%D6%A5%EB%BD%B8&file=command-line-argument.png

ジャンル:Visual Studio

OpenCV のリポジトリにアクセスしようとしたらユーザ名とパスワードを要求された

ビットリバースとポップカウント

プリプロセッサ

C言語の文字コード変換について

::WideCharToMultiByte を使う方法

iconvを使う方法

void function()
{
    std::vector<cv::Point> imagePointsUndistorted;            // このstd::vectorはこの時点で空っぽ
    cv::undistortPoints(imagePoints, imagePointsUndistorted); // この関数(DLL)内部でstd::vectorにデータが追加される(=メモリ領域が確保される)
}                                                             // 返ってきたメモリ配列はこの関数から抜ける時点(DLL外部)で破棄される

ICUを使う方法

std::string内で使える文字列検索関数

vector でfindする方法

void function()
{
    std::vector<cv::Point> arrayPoints;
    arrayPoints.reserve(1000);                    // 予めメモリ領域を確保する
    cv::undistortPoints(imagePoints, arrayPoints);// 予め確保した領域にデータを書き込む
}                                                 // これだと解放するのは確保したときと同じく、DLLの外側

‘&’ cannot appear in a constant-expression

sleep について

iostream のフォーマット指定子

typedef の順序

<< operator のオーバーロード

getopt を使おう

すべてのプログラマが読むべき記事10選

クラスのoperatorを定義するときの戻り値の型

string

Visual Studio でcppunitをビルドするお話

Sleep関数

複数桁数の数字を文字列に変換する

ある型が定義されているか確認する方法


*1  float vs. double, 2005-08-08公開, 2009-08-15更新, 2013-03-12閲覧
*2  コンパイラの警告 (レベル 1) C4930, 2007-11更新, 2013-08-22閲覧
*3  【VC++】OpenCVのヘッダが C4819ワーニングを出してウザい! « 吟遊詩人の戯言, 2009-07-14公開, 2013-03-12閲覧
*4  How do I fix warning MSB8012 in a static library project in Visual C++ 2010? - Stack Overflow, 2013-06-01投稿, 2013-06-01回答, 2014-11-30閲覧
*5  詳しくはいつだか覚えてないけれど
*6  OpenCV Computer Vision Library (), 2012-04-30投稿, 2013-03-26閲覧
*7  Best Algorithm for Bit Reversal ( from MSB->LSB to LSB->MSB) in C - Stack Overflow, 2012-11-26閲覧
*8  ビットリバース - sileの日記, 2012-11-26閲覧
*9  ビットを数える・探すアルゴリズム, 2004-05-04公開, 2012-09-01更新, 2013-05-09閲覧
*10  ビットリバース - 簡潔なQ, 2012-11-26閲覧
*11  Man page of cpp, 1993-04-30公開, 2013 -03-11更新, 2013-03-12閲覧
*12  16.3 プリプロセッサ cpp, 2013-03-12閲覧
*13  its55 lab ≫ C++でShift-JISをUTF-8に変換する, 2008-06-11公開, 2013-03-26閲覧
*14  its55 lab ≫ C++でUTF-8をShift-JISに変換する, 2008-06-25公開, 2013-03-26閲覧
*15  WideCharToMultiByte 関数 - msdn, 2013-03-26閲覧
*16  MultiByteToWideChar 関数 - msdn, 2013-03-26閲覧
*17  GetTextCharset 関数 - msdn, 2013-03-26閲覧
*18  IsTextUnicode 関数 - msdn, 2013-03-26閲覧
*19  文字コードの変換ライブラリ | プログラマーズ雑記帳, 2011-11-24公開, 2013-03-26閲覧
*20  LinuxのC言語で Shift-JIS と UTF-8 の相互変換 - かおるんダイアリー , 2010-03-12公開, 2013-03-26閲覧
*21  ICU Shift_JISとUTF-8の変換 - Faith and Brave - C++で遊ぼう, 2010-03-18公開, 2013-03-26閲覧
*22  ICU - International Components for Unicode, 2013-03-26閲覧
*23  C/C++あれこれ/文字コード変換ライブラリICUのサンプル(UTF-8→SJIS)です。 - 笑猫酒家, 2010-04-29公開, 2012-08-08修正, 2013-03-26閲覧
*24  utf 8 - C++ UTF-8 output with ICU - Stack Overflow, 2010-04-29投稿, 2013-03-26閲覧
*25  ICU による文字コード変換ライブラリ - yanoの日記, 2010-08-22公開, 2013-03-26閲覧
*26  C++編(標準ライブラリ) 第1章 string, 2013-04-10更新, 2013-04-16閲覧
*27  Cannot appear constant-expression? - yukimiの成長記, 2009-04-08公開, 2013-04-16閲覧
*28  時間測定関数の性能(分解能と最大値)のまとめ, 2013-08-22閲覧
*29  C++ の iostream フォーマット指定早見表, 2012-04-13公開, 2013-08-22閲覧
*30  typedefの使い方, 2013-08-22閲覧
*31  c++ - overloading << for my class - Stack Overflow, 2011-08-20投稿, 2013-08-28閲覧
*32  向川康博, getoptによるオプション解析, 1998-08-18公開, 2004-06-16更新, 2014-06-30閲覧
*33  すべてのプログラマが読むべき記事10選 | POSTD, 2014-06-27公開, 2014-06-30閲覧
*34  Javin Paul, 10 Articles Every Programmer Must Read, 2014-05-13公開, 2014-06-30閲覧
*35  David Goldberg, What Every Computer Scientist Should Know About Floating-Point Arithmetic, 1991-03公開, 2014-06-30閲覧
*36  Ulrich Drepper, What Every Programmer Should Know About Memory, 2007-11-21公開, 2014-06-30閲覧
*37  クラスの operator を定義するとき、戻り値の型はどうすべきか, 2012-04-07更新, 2014-11-30閲覧
*38  CppUnit - C++ port of JUnit | SourceForge.net, 2008-02-20更新(v1.12.1), 2014-11-30閲覧
*39  skmk, Visual Studio C++でCppUnitをビルドできない、そんなとき | skmks, 2011-01-25公開, 2011-04-16更新, 2014-11-30閲覧
*40  επιστημη(えぴすてーめー), 連載 C++開発者のための単体テスト入門:第2回 C++アプリケーションの効率的なテスト手法(CppUnit編) (1/4) - @IT, 2007-08-17更新, 2014-11-30閲覧
*41  What is the proper #include for the function 'sleep' in C? - Stack Overflow, 2013-02-11投稿, 2013-02-11回答, 2014-04-18更新, 2014-11-30閲覧
*42  Alternative to itoa() for converting integer to string C++? - Stack Overflow, 2008-10-23投稿, 2008-10-23回答, 2013-05-07更新
*43  c++ - How to check if a datatype is "defined" with typedef - Stack Overflow, 2010-08-18投稿, 2010-08-18回答, 2014-12-01閲覧

トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS