C++相談室 part13
レス数が1000を超えています。これ以上書き込みはできません。
0001デフォルトの引き篭もり
NGNGelegantなソースを目指してね。
( ^-゚).。o(きっと関連URLは >>2-5 辺りだよ)
0951デフォルトの名無しさん
NGNGupper_boundの逆ってことで、推して知ってやるところだと思われ。
0952デフォルトの名無しさん
NGNGこれらのコンテナにはメンバ関数にはupperboundはないが。だから
標準アルゴリズムのstd::upper_boundを適用したと仮定して、
1 2 3 4 4 4 5 6 7
となっていたとして、upperbound(4)の逆とは、
1 2 3 4 4 4 5 6 7
^ ここを指すのか(lower_bound)、
1 2 3 4 4 4 5 6 7
^ ここを指すのかで話が違ってくる。
連想コンテナではどちらでもよい。同一キーの順序づけがないんだから。
0953デフォルトの名無しさん
NGNG実装依存?
printf("before);
{
foo b:
}
printf("after");
0954デフォルトの名無しさん
NGNG当然破棄。これはCもC++も同じ。
0955922
NGNG解決しました。memcpyでOKでした。レスありが�dございました。
SOCKADDR sock; SOCKADDR_IN soin;
memcpy( &sock, &soin, sizeof(SOCKADDR) );
0956デフォルトの名無しさん
NGNGサイズが全く同じなら
SOCKADDR sock;
SOCKADDR_IN soin;
soin = *reinterpret_cast<SOCKADDR_IN *>(&sock);
で出来ないことはない。
一応参考までに。
0957928
NGNG説明も悪かったみたいで、
例えばset内に 1 2 4 とある場合、引数が
5の場合4
4の場合2
3の場合2
2の場合1
1の場合エラー
0の場合エラー
という処理をしたかったんです。
結局、
if (s.empty()) return false;
pos = s.lower_bound(key);
if (pos == s.begin()) return false;
pos--;
// 以降該当したものがある場合の処理
というようにしました。
みなさんありがとうございました。
0958デフォルトの名無しさん
NGNGclass A{
public:
A(int n); // コンストラクタ
};
class B: public A{
}
int main(){
B x(5);
}
とやったらエラーが出るんですけど、コンストラクタって継承されないんですか?
0959デフォルトの名無しさん
NGNGpublic:
B(int n):A(n){}
};
0960デフォルトの名無しさん
NGNGyes
0961デフォルトの名無しさん
NGNGが通る(VC)だけど、意味あるの?
0962デフォルトの名無しさん
NGNGちょっと訊きたいんだけど、どうしてそういうコードを書こうと思ったの?
0963デフォルトの名無しさん
NGNG0964デフォルトの名無しさん
NGNG> test.cpp(10): error C2998: '<template parameter>t': テンプレート定義にはなれません。
と言われてしまったが。
0965デフォルトの名無しさん
NGNG0966デフォルトの名無しさん
NGNG検索に引っかかりにくい名前なもので探せないのです。
0967966
NGNGコンパイラ(コンバータ)のソースという意味です。
0968デフォルトの名無しさん
NGNG0969デフォルトの名無しさん
NGNG0970デフォルトの名無しさん
NGNGリッチーのHPにはBのソースとかあるのに
ストラウストラップのHPには昔話が見当たらない
0971デフォルトの名無しさん
NGNGところで誰も新スレ立てないけどどうして?
ちゃんとhttp://std.dkuug.dk/jtc1/sc22/wg21/も入れといてね。
0972デフォルトの名無しさん
NGNGhttp://www.unipress.com/toolkit/cfront.html
0973デフォルトの名無しさん
NGNG基底 class CGorua{略};
派生1 class CMorua : public CGorua {略}
派生2 class CHorua : public CGorua {略}
派生3 class CForua : public CGorua {略}
があり、派生クラス1〜3のオブジェクトを1つずつ作成しました。
また、別のクラスとしてCAhyaがあり、オブジェクトを1つ作成しました。
派生1〜3から、CAhyaのオブジェクトを使うにはどうしたらいいのでしょうか。
グローバルでCAhya ahyahya;と宣言するのでしょうか。
どうぞよろしくおねがいします。
0974デフォルトの名無しさん
NGNGfriend class
0975デフォルトの名無しさん
NGNGyou should stand thread of continuing!
0977966
NGNG微妙な所ですけど、汎用相談スレに書いて解答が得られるとも思えず、
専用スレを立てるのは明らかに荒らしなので、結局ここしかないんですよね。
>>969
文化的価値から知的興味+この間の C マガの特集を見て
コンバータ作りたいなぁ…なんて思ってたりして、その参考も含めてなんです。
>>970
エイプリールフールのジョークならあるのにね(あれはストラウストラップのページじゃないんですっけ?日本語訳しか読んだことないので不明かも)
>>972
サンクスコです。…でも商品ぽいですね…。さすがにお金だして買う気はしないです。ごめんなさい。
せっかくなので初心者さんの質問にも答えてみます。
>>973
質問の意図が不明です。public な部分を使うだけならどこからでも出来ますよ。
全体で唯一のインスタンスを使うならグローバル変数より Singleton と呼ばれる方法を使う方がスマートです(わからなければ検索サイトで Singleton を検索してみてください。)
アクセスコントロールの話の場合は >>974 さんの回答の通り friend にするのが手っ取り早い方法ですが、あまり好ましくありません。
アクセスを制限する Adapter クラスを通して使うとよいかもしれません。
ってなんかデザパタの宣教師みたいな回答になっちゃったな…。
0978デフォルトの名無しさん
NGNGと、したときの領域を動的に削る方法ってあります?
0979デフォルトの名無しさん
NGNG>>973
>オブジェクトを使う
とあるから、単に関連を張りたいだけの気がする。
CAhyaがプログラム中で一度しか出てこないならsingleton
多数出てくるなら、派生1〜3のコンストラクタに
ahyahyaへのポインタを渡すか、関連を張る関数を用意する。
>>978
いみふめ
静的に確保した領域は動的には変更できませんよ?
多分 vector<char> が望みのものだと思うけど
0980デフォルトの名無しさん
NGNGvoid* operator new(size_t size,void* buf){return buf;}
template<typename T,size_t reg=1>struct TSA{
enum{num=reg};
char p[sizeof(T)*num];
T* pt;
TSA(){pt=new(p)T;}
};
class X{void func(){}};
/**************************************************************/
void main(void)
{
TSA<X> tsa;
cout<<&tsa.p<<sizeof(tsa.p)<<endl;
cout<<&tsa.pt<<sizeof(tsa.pt)<<endl;
}
となっているとき、pとptのサイズが違うんですが、これって正しいのですか?
あと、アドレスも違うのですが。
0981デフォルトの名無しさん
NGNG正しい
> アドレスも違うのですが。
あたりまえ
0982こうか?
NGNG{
char p[100];
char *pt;
pt = p;
cout<<&p<<sizeof(p)<<endl;
cout<<&pt<<sizeof(pt)<<endl;
}
となっているとき、pとptのサイズが違うんですが、これって正しいのですか?
あと、アドレスも違うのですが。
0983デフォルトの名無しさん
NGNGptの「中身が」pのアドレスっていうだけだからどっちもそれで正しい
0984982
NGNG0986デフォルトの名無しさん
NGNGsscanf( argv[1]+1, "%2x", &x );
ココのargv[1]+1の部分はどういった処理なんでしょうか。
argvはchar型なので文字列連結では無いとは思うのですが。。
0987デフォルトの名無しさん
NGNG0988デフォルトの名無しさん
NGNG0989デフォルトの名無しさん
NGNGargv は char **型じゃないの?
あんたのプログラムがどうなってるか知らんから分からんけどなー
0990デフォルトの名無しさん
NGNG0991デフォルトの名無しさん
NGNG0992デフォルトの名無しさん
NGNG0994デフォルトの名無しさん
NGNG0995デフォルトの名無しさん
NGNG>>993でいいのか?
0996デフォルトの名無しさん
NGNG0997デフォルトの名無しさん
NGNG0998デフォルトの名無しさん
NGNG998!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
0999デフォルトの名無しさん
NGNG1000デフォルトの名無しさん
NGNG10011001
Over 1000Threadもう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。