C++相談室 part8
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
NGNG0153デフォルトの名無しさん
NGNGかなりいいみたいだよ。もっともDev-C++はまだβ版だけどね。
MinGWは実行ファイルのサイズが小さくて幸せ。
0154デフォルトの名無しさん
NGNGンなこたぁない
0155デフォルトの名無しさん
NGNGそ・・・・それは、、VCとかと比べるとあまり変わらンけど、BCよりは
小さいかなと。msvcrt使ってるから。
でも、gcc3.1になってから、実行ファイルのサイズが大きくなった
ようだし。。。取り敢えずサイズが小さいという言葉は取り下げます。
0156デフォルトの名無しさん
NGNGこのメッセージから始まっているスレッドで、
コンストラクタから例外を出さない方が良いとなっているんだけど
読んでもイマイチ理解できません。
class A {
char* buf;
public:
A():buf(new char[100]{}
~A(){delete buf;}
};
たとえばこんなクラスで、newが例外をthrowしても、
クラス構築失敗で問題無いと思うんですが。
0157初心者以前
NGNGつくったもの(exeファイル)をネット上で実行ってできるのでしょうか?
ダウンロードして、実行というものはみたことあるのですが
クリックして、ネット上で実行するものをみたことありません。
どうなのでしょうか
0158名無しさん@カラアゲうまうま
NGNGchar** all_line = new char*[n];
for(int i=0;i<n;i++)
all_line[i] = new char[100];
0159デフォルトの名無しさん
NGNG0160名無しさん@カラアゲうまうま
NGNGごめんまだ入門者だから勉強してないんだ
0161デフォルトの名無しさん
NGNG「ネット上で実行」の定義を述べて下さい。
0162デフォルトの名無しさん
NGNG多分だけど、CGIプログラムのことじゃないかな?
0163デフォルトの名無しさん
NGNGいいけど100文字が分かっているなら
char (*p)[100] = new char[n][100] ;
のほうがいいと思う
0164名無しさん@カラアゲうまうま
NGNGありがとうございました。
0165デフォルトの名無しさん
NGNGTerrariumとか「ネットで実行」にぴったしダネ
0166デフォルトの名無しさん
NGNG俺も頑張ろう...
0167デフォルトの名無しさん
NGNG0168デフォルトの名無しさん
NGNGallocator・・・・・・
0169166
NGNG0170デフォルトの名無しさん
NGNG(最終的にはOutputDebugString()で出力する)
これって、ガリガリ書くしか方法は無いのでしょうか?
なんかSTL辺りに含まれてそうな気がするのですが(継承して使うとか)...
又、ソースを公開されているページでも良いので、ご存知でしたらお教えください。
trace << "エラー 変数=" << tmp << endl;
みたいに出来ないでしょうか...
0171デフォルトの名無しさん
NGNGhttp://www.jah.ne.jp/~naoyuki/Writings/ExtIos.html
ふぉらよ。あとは自力でなんとかしな。(勝手に引用失礼)
>>166
漏れもやってるよ。気にすんな。
でもインターフェースが気に入らずに結局vectorも自作したがな。
オラ不毛って言えよ!
0172170
NGNGどうもありがとうございます。
0173デフォルトの名無しさん
NGNGている人のどこまでの個人情報を知る事ができるの?あっipから住所等の個人情報が解る
なんてこという低レベルの回答は無しね。っていうか、ここには低レベルな人はいないとはおもうけど。
0174デフォルトの名無しさん
NGNGWeb制作板にいけ。
0175デフォルトの名無しさん
NGNGその日にしたオナニーの回数や昨日食べた朝飯、
尻の使用回数などまでバッチリ分かりますが。
0176デフォルトの名無しさん
NGNGclass a {
private:
static int m_value;
public:
static int Get() { return m_value; };
};
//b.cpp
#include "a.h"
class b : public a {};
void main() {
b::Get();
};
とすると、リンク時に「Error: 外部シンボル 'a::m_value' が未解決」
となるんですが、なぜなんでしょう?
0177デフォルトの名無しさん
NGNG0178176
NGNGclass a {
private:
static int m_value;
public:
static int Get() { return m_value; };
};
int a::m_value = 0;
0179デフォルトの名無しさん
NGNGすみません、そっちにいきます
0180デフォルトの名無しさん
NGNGconstは関数の中などで軽く定数を持たせたいときに使う事でよいですか?
0181デフォルトの名無しさん
NGNGEffective C++を買って読もう。君の質問の回答はそこにある。
ついで、将来君が疑問に思うであろう問題の回答の3割ぐらいはそこにあるはずだ。
0183デフォルトの名無しさん
NGNGby effective C++
0185デフォルトの名無しさん
NGNG読み込んだのですが、Moreの方の評価はどんなもんでしょうか?
どちらかを購入したいのですが、間違いなく良書なれど既読の前者か、
立ち読みした感じ、ちょっと重箱の隅っぽい気がした未読の後者か…。
3800円を出せぬ貧乏人に、せめて知識をお与え下されば幸いです。
0186デフォルトの名無しさん
NGNGEffective C++, More Effective C++, Effective STL 三部作は、食費を削っても
買うべき。
0187デフォルトの名無しさん
NGNG0188185
NGNGスマートポインタや例外処理の解説くらいならとりあえずいいかな
…と思って他のですが、前作に劣らぬ良書なんですねぇ。レスサンクスです。
食費\400/dayか………………(;´Д`)つ�I アト380ニチ…
0189デフォルトの名無しさん
NGNG0190デフォルトの名無しさん
NGNG0191デフォルトの名無しさん
NGNG0192デフォルトの名無しさん
NGNG俺の脳内で自動翻訳済みの物がある
0193デフォルトの名無しさん
NGNGGoF のデザパタ本で良いと思うが。後は 190 も挙げてるけど Modern C++ Desgin
が template 使ってデザパタしてる。
0194デフォルトの名無しさん
NGNG_φ(。。_) GoFは著者名でしたっけ。ミョウニチ本屋へ足を運んでみます。
ありがとうです。
0195デフォルトの名無しさん
NGNG+ C++sardで6冊か(w
0196デフォルトの名無しさん
NGNG0197デフォルトの名無しさん
NGNGInside the C++ Object Model も入れとく。コンパイラの内部動作について理解を
深めるのに最適。STL 使うなら Generic Programming - STL による汎用プログ
ラミングも必読。あとは C++ only の本ではないが Linkers & Loaders も読んで
おいて損はない。
>>196
あれも良い本だよな。OO がらみだと、デザパタ本に憂鬱本、それからリファク
タリングあたりか。
(とりあえず、こんなもんじゃない?)
0198デフォルトの名無しさん
NGNG0199デフォルトの名無しさん
NGNG『憂鬱なプログラマのための オブジェクト指向開発講座』
C++というよりはオブジェクト指向についての本だが。
わりと具体的に話を勧めていくので分かりやすい。
//しかし、必読書のレベルですらいくらかかるんだ?
0200デフォルトの名無しさん
NGNGこれらの本を理解しているかのテストをするセクションが欲しいね。
クリアしないと絶対にインストールできないの。
0202デフォルトの名無しさん
NGNG実際にやってみながら学ぶことができない罠。
0203デフォルトの名無しさん
NGNGネタにマジレスするのもなんだが、そりゃ辛すぎだわ。コンパイラで
実験してみないとわからん、みたいなこともあるんだし。
>>197
俺、STLに関する本はすでに『C++標準ライブラリチュートリアル&
リファレンス』と『Effective STL』を持ってるんだけど、
『Generic Programming - STL による汎用プログラミング』は、
それでも買ったほうがいいぐらいの本?
http://www.amazon.co.jp/exec/obidos/ASIN/4756137156/qid%3D1025313500/250-3796507-7440208
http://www.amazon.co.jp/exec/obidos/ASIN/4894714108/qid%3D1025313461/250-3796507-7440208
http://www.amazon.co.jp/exec/obidos/ASIN/4756134416/qid%3D1025313416/250-3796507-7440208
あと、『Inside the C++ Object Model』って、洋書?
0204デフォルトの名無しさん
NGNG『Generic Programming ―』は、体系的・抽象的に書かれているので、
ある程度 STL が分かってから読むべき本のように思う。でも、読んでおくと
視野が広がるし、思考の経済というか、他方面への応用も利くと思う。
『Inside the C++ Object Model』は、以前トッパンから訳書が出ていたんだが、
同社の出版事業撤退により絶版状態のようだ。C++ を究めたいという酔狂もの
には必読。
0205203
NGNG0206デフォルトの名無しさん
NGNG下記ソースをコンパイルすると
error C2535: 'Aho<T>::Baka Aho<T>::f(Aho<T>::Baka)' : メンバ関数は、既に定義または宣言されています。
こういわれる。
template<class T>
class Aho {
typedef T::Baka Baka;
//typedef int Baka; // 上の行をコメントアウトしてこの行を有効にするとコンパイルが通る
template<class U> Baka f(Baka baka);
template<> Baka f<int>(Baka baka) { return Baka(); }
template<> Baka f<char>(Baka baka) { return Baka(); }
};
0207デフォルトの名無しさん
NGNG0208デフォルトの名無しさん
NGNGテンプレート引数に依存した不明な型Bakaを引数にとった関数は
その特殊化よりも不明な引数の一致を優先して判断されているように
見受けられる。バグかな・・。
0209デフォルトの名無しさん
NGNGとりあえず gcc 2.95.3 でも Borland C++ Compiler 5.5.1 でもコンパイルエラー
になることは確認したけど。
0210デフォルトの名無しさん
NGNG0211デフォルトの名無しさん
NGNGするとC++として不正だって事?
なにがダメなんだろ・・・。
0212デフォルトの名無しさん
NGNGtypedef typename T::Baka Baka;
じゃない?
0213デフォルトの名無しさん
NGNGだめですた・・
0214デフォルトの名無しさん
NGNGCを一通りできるとして
C++を業務レベルまでマスターするには
どれくらいかかるんですか?
0215デフォルトの名無しさん
NGNG0216デフォルトの名無しさん
NGNGtypedef T::Baka Baka;
の意味を考えたらよくわかるはず.
当然,class T ではすでに T::Baka が typedef されている必要がある訳で.
あとは >>212 のいうとおり,
typedef typename T::Baka Baka;
は必須の気が.
0217デフォルトの名無しさん
NGNGいや、結果は変わらないんですよ・・。in VC7
他のコンパイラではどうなんでしょうか?
template<class T>
class Aho {
typedef typename T::Baka Baka;
//typedef int Baka; // 上の行をコメントアウトしてこの行を有効にするとコンパイルが通る
template<class U> typename Baka f(typename Baka baka);
template<> typename Baka f<int>(typename Baka baka) { return Baka(); }
template<> typename Baka f<char>(typename Baka baka) { return Baka(); }
};
0218デフォルトの名無しさん
NGNGだ か ら
具体的にどんなインスタンス作ってるか教えれ
答えるのはそれからだ
0219デフォルトの名無しさん
NGNG宣言しただけ。
インスタンスは作らない状態でエラーが出ます。
0220デフォルトの名無しさん
NGNGVC6 だと何事もなく通るけど。
0221デフォルトの名無しさん
NGNG・・本当だ。
つまりVC7のヴァグってことでOK?
ゲイツ氏ね
0222デフォルトの名無しさん
NGNG・TにBakaを持っていないクラスを渡しているんじゃないか?
・VC6で通って、VC7で通らないことってあるの?
0223デフォルトの名無しさん
NGNG今試せないけどソースは上に上げたあれのみです。
typedef Aho<ほにゃらら>
もしてないし、ましてインスタンスの作成もしてないです。
0224デフォルトの名無しさん
NGNG基本クラスのポインタに派生クラスのオブジェクトをもたせている場合、
基本クラスのポインタをdeleteしただけでは派生クラスのデストラクタは
呼んでくれないのでしょうか?今書いているソースでそうなっていて
メモリリークを起こして困っているのですが・・・。
0225デフォルトの名無しさん
NGNG基底クラスのデストラクタを virtual にする必要があります。
0226デフォルトの名無しさん
NGNGあ、一応やってみています。当然ながらクラスと同名なので、デストラクタの
名前は変わってくるのですが、それでもオーバーライドしてくれるんですか?
やってみても呼んでくれてないようなんですが・・・
0227デフォルトの名無しさん
NGNG> 名前は変わってくるのですが、それでもオーバーライドしてくれるんですか?
もちろん。っつか、大抵の実装では名前なんか見てなくて vptr->vtbl に書き
込まれたポインタを参照するだけだし。
ダメだというそのプログラム、簡略化してテスト用のコードを張ってくれ。
0228デフォルトの名無しさん
NGNGちょっと今取り込んでいるので、もし良かったら夜に張るので
お願いできますか?
0229アポストロフィーS
NGNGJPEG画像を縮小して保存するプログラムを作りたいんですが、自分でバイナリ読み取ってピクセル圧縮して色とかも平均出して・・・とかってやらないと駄目でしょうか。
かなり大変そうなんですが・・・ なんか簡単にできるライブラリとかありませんか?
0230廻し者
NGNGIntel Image Libary と Intel JPEG Library なんか使ってみては
どうでしょうか。
ttp://www.intel.com/software/products/perflib/
0231デフォルトの名無しさん
NGNGパパこれを探すのに5000ファイルくらい調べちゃったよ
0232デフォルトの名無しさん
NGNG0233デフォルトの名無しさん
NGNG単なる手前のボケでした。平身低頭、申し訳ありません。
一応顛末を書いておくと、基底クラスや派生クラスが親子構造で混在するような
システムを作っていて、deleteする時はデストラクタで子供を次々deleteしていく
ようにして、一変に消せるようにしていたのですが、条件判定に変なものを使って
失敗していたようです。お騒がせしました。
直したら立派に呼んでくれて安心しました。
0234デフォルトの名無しさん
NGNGlocate ios_base で一発じゃないのか?
0235234
NGNGlocate '*/ios'
とでもしてくれ。
0236デフォルトの名無しさん
NGNGどうもです。しかし・・・英語がむずい・・・;
なんか無理そうだ・・・とりあえず落としてみます。
0237229
NGNG0238デフォルトの名無しさん
NGNG0239
NGNGできますか?
むりなら代わりとなる方法を教えてください
0240デフォルトの名無しさん
NGNG0241デフォルトの名無しさん
NGNGvoid A::foo(int array[], int count)
{
for (int i = 0; i < count; i++) cout << array[i];
}
で何か不満でも?
0242デフォルトの名無しさん
NGNGの N を変数にしたいってことなのかな。飛躍し過ぎ?
0243デフォルトの名無しさん
NGNGvector
0244デフォルトの名無しさん
NGNGvoid A::foo(vector<int> ints)
{
for (vector<int>::iterator i = ints.begin(); i != ints.end(); ++i) {
hanatanhalahala(i);
}
}
0245デフォルトの名無しさん
NGNGchar a[256];
f(a);
0246デフォルトの名無しさん
NGNG動的なサイズ変更に対応できないのでアウト
0247デフォルトの名無しさん
NGNG0248デフォルトの名無しさん
NGNG0249デフォルトの名無しさん
NGNG配列は動的ではない
0250デフォルトの名無しさん
NGNG0251デフォルトの名無しさん
NGNGスレ違いを指摘するんなら、もっとスレ違いらしさを出したコードにしとけよ。
void A::foo(vector<int>& ints)
{
for_each(ints.begin(),ints.end(),hanatanhalahala);
}
0252デフォルトの名無しさん
NGNG■ このスレッドは過去ログ倉庫に格納されています