[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 2chのread.cgiへ]
Update time : 01/29 10:31 / Filesize : 249 KB / Number-of Response : 964
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

はきだめC/C++下級者の質問箱 2



1 名前:デフォルトの名無しさん [2006/08/22(火) 09:21:31 ]
はきだめのスレへようこそ

ここは、C/C++に挫折し、それにもかかわらず、C/C++やらなければならない者達がたむろするスレです。
なお、質問する人は回答はあまり期待しないでください。


前スレ:はきだめC/C++下級者の質問箱
pc8.2ch.net/test/read.cgi/tech/1124256027/

577 名前:デフォルトの名無しさん [2007/10/18(木) 01:34:33 ]
あげあげ

578 名前:デフォルトの名無しさん mailto:sage [2007/10/18(木) 02:00:25 ]
>>571

void* はどんな型のポインタが渡されるか分らない場合に使う。
(キャストしないと参照先を見れない)
int* はポインタが指し示した先がint型であるとされる。

char a = 'a'
int* p1 = (int*)&a;
void* p2 = &a;

となっているとき*p1はエラーにならんが*p2はエラーになる。
なので関数内で使用時のキャストし忘れが防げる…のではなかったかな?

579 名前:デフォルトの名無しさん mailto:sage [2007/10/18(木) 08:17:44 ]


580 名前:デフォルトの名無しさん mailto:sage [2007/10/18(木) 08:32:36 ]
すみません。書きかけを送信してしまいました。
ハード、ソフト共に同じはずなのに、別のPCではマルチプロセスのミューテックスによる排他制御が上手く働いていないみたいなのですが、
原因として何を疑えばいいのでしょうか。もう全然判んないです。

581 名前:デフォルトの名無しさん mailto:sage [2007/10/18(木) 09:30:23 ]
>>580
最小限のコードを晒す

582 名前:デフォルトの名無しさん mailto:sage [2007/10/19(金) 08:27:30 ]
『上手く働いていないみたい』といいたい気持ちはわかるが
それでは他人にはわかってもらえませんよ。

583 名前:デフォルトの名無しさん mailto:sage [2007/10/19(金) 08:30:39 ]
>>580
今まで偶然動いていただけで同期処理に漏れがあったかだな

584 名前:デフォルトの名無しさん mailto:sage [2007/10/19(金) 09:13:13 ]
>>580
うちでは上手く働いている
実力不足じゃね?

585 名前:デフォルトの名無しさん mailto:sage [2007/10/20(土) 11:06:18 ]
今まで低速シングルCPUで動いていたが
高速なPCに変えたらおかしくなったとか
クアッドコアに変えたらおかしくなったとか
そういうマルチスレッドプログラムなんかもあるんだろうな。



586 名前:デフォルトの名無しさん mailto:sage [2007/10/20(土) 13:03:24 ]
機種依存ソフトなんだろう。

587 名前:デフォルトの名無しさん mailto:sage [2007/10/20(土) 16:34:20 ]
方角が悪い。

588 名前: ◆NpJ1Hez.TM mailto:sage [2007/10/24(水) 04:48:27 ]

YES!!

589 名前:デフォルトの名無しさん mailto:sage [2007/10/25(木) 17:57:28 ]
関数ポインタテーブルとswitch-case文
ってどっちが高速なの?

どっちも個数は100

590 名前:デフォルトの名無しさん mailto:sage [2007/10/25(木) 21:02:40 ]
ポインタ

591 名前:要は、実測あるのみ mailto:sage [2007/10/29(月) 12:07:48 ]
>>589
一概には言えないが、テーブルの方が遅いことは多分ないと思う。
恐らくは、大差ないと思うが。

592 名前:デフォルトの名無しさん mailto:sage [2007/10/30(火) 01:12:14 ]
テーブルが遅くなるケースも充分考えられるよ。もちろん、メモリアクセスの速度を除いて。

単純な例だと、2つの値(分岐先)が交互に来る場合。
こういった規則的なものなら、分岐予測はほぼ必ず成功する(ものが多い)。
最近のプロセッサなら、もっと複雑なパターンでも予測出来るものもある。
一方、テーブルジャンプだと、(普通は)前回と同じ分岐をすると仮定されるので
必ず分岐ミスとなる(ものもある)。

当然、分岐予測ミスのペナルティの大きさも含めて、プロセッサによる差が大きいけどね。

593 名前:デフォルトの名無しさん mailto:sage [2007/11/16(金) 19:20:28 ]
>>589
なぜ「switch-case文より関数ポインタテーブルのが高速」だと考えるのか?

条件分岐が排除できるから

では、なぜ条件分岐が排除できると高速になるのか?

実際に実行するコードがかなり前から分かっていれば、
CPUでコードプリフェッチやアウトオブオーダー実行などの最適化を行えるから

関数ポインタテーブルを使えば実行するコードがかなり前に分かるのか?

条件にもよるが、おそらくはノー
多くの場合、直前にならないと関数ポインタの値が分からない

つまり、関数ポインタテーブルを使っても、少なくともx86の場合は速くなりません。
条件分岐なら二者択一でとりあえずどちらかの分岐コードを実行するという手もありますが、
関数ポインタだとそういうこともできないので、多くの場合ストールします。
実際に実行するコードアドレスがかなり前から分かっていて、
そのアドレスを特定のレジスタ(か不変なことが保証されているメモリ)
に保存しておくことができればストールは回避できます。

594 名前:デフォルトの名無しさん mailto:sage [2007/11/17(土) 15:25:53 ]
じゃあif-elseでもいいのか


595 名前:デフォルトの名無しさん mailto:sage [2007/11/17(土) 19:17:04 ]
選択肢が100個もあれば、速度は分布によっていろいろだろうな。



596 名前:デフォルトの名無しさん mailto:sage [2007/11/17(土) 23:16:36 ]
Cカス
Cカス

うるさい人を黙らせる方法教えてください

なるべく合法的な方法がいいです

597 名前:デフォルトの名無しさん mailto:sage [2007/11/17(土) 23:30:14 ]
RubyもPythonもphpもUnixも
全部Cで書かれてるんだぞ。
Cはすごいんだぞ。

598 名前:デフォルトの名無しさん mailto:sage [2007/11/17(土) 23:35:23 ]
>>596
相手がしゃべった瞬間に大声を出すとか

599 名前:デフォルトの名無しさん mailto:sage [2007/11/19(月) 07:11:07 ]
>>596
お前の耳を取ってしまえ

600 名前:デフォルトの名無しさん mailto:sage [2007/11/22(木) 00:23:13 ]
C言語でC++の
テンプレート見たいに記述したいんだけど

どうしたらいいものじゃろうか?のぅ?

601 名前:デフォルトの名無しさん mailto:sage [2007/11/22(木) 01:03:26 ]
プリプロセッサを駆使する。

602 名前:デフォルトの名無しさん mailto:sage [2007/11/22(木) 20:52:15 ]
でどうやってかくの?

603 名前:デフォルトの名無しさん mailto:sage [2007/11/23(金) 09:48:29 ]
## を駆使する

604 名前:デフォルトの名無しさん mailto:sage [2007/11/24(土) 06:34:15 ]
C++にtemplateが実装されるまでの過程を知ってりゃ話は早いんだがな。
generic.h

605 名前:デフォルトの名無しさん mailto:sage [2007/11/27(火) 22:49:30 ]
そうだ、cfrontを使おう(w



606 名前:デフォルトの名無しさん mailto:sage [2007/12/01(土) 09:23:34 ]
template<typename T>T*hoge(T*t){return t;}
でNULLを受け取れるようにするにはどうすればいいんでしょう...

607 名前:デフォルトの名無しさん mailto:sage [2007/12/01(土) 11:57:46 ]
(void*)NULLみたいに、型付きのNULLを渡す。
でないと、どの型のNULLがほしいか誰にも判らないじゃん。

608 名前:デフォルトの名無しさん mailto:sage [2007/12/01(土) 13:28:57 ]
NULLに型など付けれません
ばかじゃねーのw

609 名前:デフォルトの名無しさん mailto:sage [2007/12/01(土) 23:02:23 ]
>>606
hoge<int>(0)

610 名前:デフォルトの名無しさん mailto:sage [2008/01/18(金) 00:18:25 ]
hashのkeyを

char key[32]で定義しmemcpyを
必要に応じて複数回コールする方法と


struct key_data{
_u32 data;
....
};

みたいな感じで構造体を定義して
_u8 *にキャストして使うのは
どっちが速い?それとも同じ?


611 名前:デフォルトの名無しさん mailto:sage [2008/01/18(金) 03:44:57 ]
なんともいえない。
実測。

612 名前:デフォルトの名無しさん mailto:sage [2008/01/19(土) 00:12:37 ]
>>608
いくらここが掃き溜めだと言っても限度が・・・

613 名前:デフォルトの名無しさん [2008/01/20(日) 21:00:38 ]
コンパイルしたときのエラーに

storage size of 's' isn't known

とでてきてしまいます。
これはどこを直せばいいんでしょうか?
storageって何ですか?

614 名前:デフォルトの名無しさん mailto:sage [2008/01/21(月) 10:32:07 ]
>>613
辞書くらい引け。

恐らく、int s[]みたいな変数宣言でもしているんだろ。

615 名前:デフォルトの名無しさん mailto:sage [2008/01/21(月) 12:37:58 ]

offsetof(s,m)マクロみたいなので
他クラスのprotectedメンバのオフセットを
取得したいんですがどうすればよいですか?





616 名前:デフォルトの名無しさん mailto:sage [2008/01/21(月) 12:41:48 ]
>>615
それができたらprotectedの意味がないとは思わないかね?

617 名前:デフォルトの名無しさん [2008/01/22(火) 23:31:19 ]
コンパイルをした時に
converting to ‘int’ from ‘float’

って表示されたらどこが悪いんでしょうか?

618 名前:デフォルトの名無しさん mailto:sage [2008/01/22(火) 23:39:07 ]
>>617
floatからintに暗黙の変換を行っている。
明示的にキャストを書けば警告は出ない。

619 名前:デフォルトの名無しさん mailto:sage [2008/01/22(火) 23:44:05 ]
>>617
>って表示されたらどこが悪いんでしょうか?
頭……というのはさておき、floatからintではオーバフローが起きる恐れがあるので
気の利いたコンパイラは警告を出すってこと。
# 勿論、出さないようにもできる。

620 名前:デフォルトの名無しさん mailto:sage [2008/01/23(水) 00:29:52 ]
>>618-619
お陰様で解決出来ました、ありがとうございます。


621 名前:デフォルトの名無しさん mailto:sage [2008/01/28(月) 20:04:43 ]
C++のコンストラクタの中で例外発生させるのは駄目と聞いたのですが
ではnewもbad_alloc投げる可能性があるのでコンストラクタでnewしてはいけないのですか?

622 名前:デフォルトの名無しさん mailto:sage [2008/01/28(月) 21:45:32 ]
コンストラクタで例外はまあない方がいいのは確かだが、
ダメというほどではない。
デストラクタは絶対あかんがね。

623 名前:デフォルトの名無しさん mailto:sage [2008/01/29(火) 18:08:28 ]
クラスを作る側も使う側もきちんとリソースの管理ができていれば何の問題もない。

624 名前:デフォルトの名無しさん mailto:sage [2008/01/30(水) 22:38:50 ]
コンストラクタでの例外については、人によって意見が違うが、
俺は積極的に例外が発生するようにしてる。

じゃないと、不正なオブジェクトが生成されてしまうから

625 名前:デフォルトの名無しさん mailto:sage [2008/02/02(土) 23:02:43 ]
仮想コンストラクタとスマートポインタ使えば解決。



626 名前:デフォルトの名無しさん mailto:sage [2008/02/12(火) 03:07:41 ]
Phidgetsというハードを制御したいのですが

~略
int servo_simple()
{

CPhidgetServoHandle servo = 0;

//create the accelerometer object

CPhidgetServo_create(&servo);

//open the LED for device connections

CPhidget_open((CPhidgetHandle)servo, 20489);

//Step 1: Position 10.00
printf("Move to position 10.00. Press any key to Continue\n");
getchar();

CPhidgetServo_setMotorPosition (servo, 1, 100.00);

return 0;
}

//int _tmain(int argc, _TCHAR* argv[])
int main(void)
{
servo_simple();
return 0;
}

627 名前:デフォルトの名無しさん mailto:sage [2008/02/12(火) 03:08:03 ]
この文で、
getchar();
で入力を待たずにCPhidgetServo_setMotorPosition (servo, 1, 100.00);
を実行したいのですが、getchar();を消しただけでは駄目なのでしょうか?
ド素人な質問をしていると思うのですがどうかご教示下さいませ。

628 名前:626-627 mailto:sage [2008/02/12(火) 07:42:40 ]
自己解決しました。 getchar();で入力を待たずに実行すると、ハードを認識するのが追いつかずに実行されるようでした。

629 名前:デフォルトの名無しさん mailto:sage [2008/02/19(火) 23:09:36 ]
クラスを普通に前宣言する時
class MyClass;

って書けばいいけど、例えば

class MyClass
{
public:
class Foge
{
};
};

みたいに MyClass の中にあるクラス Foge を
前宣言したい時はどうすればいいの?

630 名前:デフォルトの名無しさん mailto:sage [2008/02/20(水) 01:39:33 ]
>>629
class MyClass
{
public:
class Foge;
};

class MyClass::Foge
{
};

MyClass の定義無しでの宣言はできない。だからネストされたクラスを
インターフェースに使うと MyClass を前方宣言で済ませるのが難しくなる。

631 名前:デフォルトの名無しさん [2008/02/20(水) 22:12:19 ]
一つのソケットに対して送信、受信が交互ではなくて、不定期に発生するような、
プログラムを作ってるんですけども、こういうのってどうするのが良いですか?
交互に通信がある場合ならselect→recv→sendとかで簡単なんですけども
送信が繰り返される場合もあるので悩んでいます。
どなたか教えてください

632 名前:デフォルトの名無しさん [2008/02/20(水) 22:58:08 ]
今マインスイーパーを作ってるんですが
それについての質問ってここでしてもいいんですか?

633 名前:デフォルトの名無しさん mailto:sage [2008/02/20(水) 23:35:38 ]
>>631
sendリクエストをsignalで受ければいいような。
もし必要ならネットワークスレへどうぞ。

>>632
マインスイーパー程度ならここでもいいと思いますが、
GUIライブラリの使い方なら該当GUIライブラリスレへどうぞ。
マインスイーパースレも参考にどうぞ。

634 名前:デフォルトの名無しさん [2008/02/20(水) 23:51:14 ]
>>633
visualC++ 6.0を使って作ってるんですが
地雷の表示と踏んだ後のリセットがうまく出来ないんです

void CMine1View::DispMine()
{
CClientDC dc(this);
CBrush *oldBrush1,redBrush,*oldBrush2;
int iy,ix;
for(iy=2;iy<=Masu+1;iy++)
{
for(ix=2;ix<=Masu+1;ix++)
{
if(Mine_Position[iy][ix]==-1)
{
oldBrush1=(CBrush*)dc.SelectStockObject(WHITE_BRUSH);
dc.Rectangle(ix*Width,iy*Width,
ix*Width+Width,iy*Width+Width);
dc.SelectObject(oldBrush1);
redBrush.CreateSolidBrush(RGB(255,0,0));
oldBrush2=dc.SelectObject(&redBrush);
dc.Ellipse(ix*Width+5,iy*Width+Width+5,
ix*Width+Width-5,iy*Width+Width-5);
dc.SelectObject(oldBrush2);
redBrush.DeleteObject();
}
}
}
AfxMessageBox("地雷 踏みました!");
}

635 名前:デフォルトの名無しさん mailto:sage [2008/02/21(木) 03:02:40 ]
>>631
selectが反応したときはrecvする
sendはいつでも何度でも好きなときに好きなだけ繰り返し呼んで良し
何か問題が?



636 名前:デフォルトの名無しさん mailto:sage [2008/02/21(木) 03:13:07 ]
トランシーバーと同じ問題じゃないの?どうぞ

637 名前:デフォルトの名無しさん [2008/02/27(水) 01:03:33 ]
質問です。
VC使ってて、あるクラスの実体を複数のスレッド内で使ってるのですが、
これって問題あるのでしょうか?
スレッド毎に異なるデータを用意してるので、
クラスのメンバ変数への排他の問題はありませんが、
クラス内にDLLクラスをメンバに作っていて、
スレッド毎に同じDLLにアクセスしています。
こんな使い方って問題ありますか?




638 名前:デフォルトの名無しさん mailto:sage [2008/02/27(水) 01:08:24 ]
DLLの提供する関数がリエントラントなら問題ないんじゃね

639 名前:デフォルトの名無しさん mailto:sage [2008/02/28(木) 03:27:06 ]
クラスAがあり、クラスAを実体化した際、コンストラクタでクラスBを実体化したとします。
このとき、クラスBがクラスAのpublicな関数を呼び出すためには、
クラスBに対してクラスAの実体のポインタを渡し、そこからアクセスする以外に方法がありますか?
どのような方法があるでしょうか?


640 名前:デフォルトの名無しさん mailto:sage [2008/02/28(木) 03:29:48 ]
>>639
ポインタじゃなくて参照使うとか、無理やり違う手段でっていうならグローバル変数とか、
いろいろありそうだよ。

641 名前:デフォルトの名無しさん [2008/03/03(月) 15:37:24 ]
>>639
あんま使ったこと無いけどクラスBにクラスAのメソッドをfriendで共有すれば?

642 名前:デフォルトの名無しさん mailto:sage [2008/03/03(月) 17:35:21 ]
friendにしてもthisポインタ相当の何かは必要だろ。

643 名前:デフォルトの名無しさん mailto:sage [2008/03/03(月) 19:14:59 ]
クラスCのstatic変数に突っ込んで、クラスCの静的メンバ関数から呼んでもらう。

644 名前:デフォルトの名無しさん mailto:sage [2008/03/04(火) 12:27:18 ]
>>639
C#でいうdelegate?
d.hatena.ne.jp/wata_d/20060309/1141875648

645 名前:デフォルトの名無しさん mailto:sage [2008/03/04(火) 21:19:25 ]
グローバル変数なんつー力技を除けば、
どうあっても this は渡す必要がある。
デリゲートだって内部的に this を渡している訳で。

friend は public メンバ呼ぶのには全く関係ないな。



646 名前:デフォルトの名無しさん mailto:sage [2008/03/04(火) 23:27:30 ]
>>645
もちろん、何らかの方法でthisを渡す必要はあるだろう。
でも、>>639の場面で、class Bからclass Aのメソッドを直接呼び出すには、class Bがclass Aを知らないといけない。
delegateは、メンバ関数へのproxyとして働くことで、メソッドを定義しているclassを隠すことが出来る。
>>639の場面では、class Bはclass Aを知らなくても、class Aのメソッドを呼び出すことが出来るようになる。

647 名前:デフォルトの名無しさん mailto:sage [2008/03/04(火) 23:59:25 ]
そもそも、コンストラクタ内で他のクラスにメンバ関数を呼ばせる事自体
結構危険な事だと思うけどね。

648 名前:デフォルトの名無しさん mailto:sage [2008/03/08(土) 17:27:25 ]
コンストラクタで実体化しただけで、
コンストラクタで関数を呼ぶとは書いてないだろ

649 名前:デフォルトの名無しさん [2008/03/13(木) 19:06:50 ]
ja.wikipedia.org/wiki/Memset
何でstrcpy(s, NULL);は誤りなのですか?

650 名前:デフォルトの名無しさん [2008/03/13(木) 19:26:01 ]
>>649
NULLがchar*型じゃないから

651 名前:デフォルトの名無しさん mailto:sage [2008/03/13(木) 19:44:01 ]
memsetは問題なく動くからまだいいけど、
普通は、s[0] = '\0';で十分だろ。せいぜいstrcpy(s, "");

652 名前:デフォルトの名無しさん mailto:sage [2008/03/13(木) 23:19:50 ]
NULL を脱参照して死亡

653 名前:デフォルトの名無しさん [2008/03/24(月) 10:47:50 ]
ファイルを分割したときに変数を大域変数として定義して、
呼び出すためにはどうしたらいいでしょうか?

今ファイルがmain.cpp,hoge.h,hoge.cpp,hage.h,hage.cppとある時に,
全体でのメモリアクセスを調べるためにmain.cppでint型の大域変数を定義して,
hoge.cppとhage.cpp内で値をインクリメントできるようにしたいのですが・・・

654 名前:デフォルトの名無しさん mailto:sage [2008/03/24(月) 10:51:04 ]
どんな入門書にも書いてあるよ

655 名前:デフォルトの名無しさん [2008/03/24(月) 11:25:16 ]
main.cppで変数定義して、
hage.h,hoge.hでexturn宣言したらエラーが出るのですが、
やり方間違ってますか?



656 名前:デフォルトの名無しさん mailto:sage [2008/03/24(月) 11:26:37 ]
>>653
クラスにすることお勧め。

657 名前:デフォルトの名無しさん mailto:sage [2008/03/24(月) 13:36:42 ]
どうしてエラーをコピペしないのか。俺らをエスパーだと思ってるのか。

>>655
ソースも見ないで間違ってるかどうか判断できるわけがない。
ソース(その変数に関係するところ)とエラー(いっぱい出てたら始めの3個くらい)を張って。
改めて打つんじゃなくてコピペで。

>hage.h,hoge.hでexturn宣言したらエラーが出るのですが、
externの綴りが間違ってる。ここに書く時に間違えただけならいいんだけど。

658 名前:デフォルトの名無しさん mailto:sage [2008/03/24(月) 20:57:56 ]
エスパーしてもらいたいんじゃなくて
原因である可能性の高いものを列挙してもらいたいんじゃない?

んで、それを一通り試して、自己解決しました!って言うの(笑)

659 名前:デフォルトの名無しさん mailto:sage [2008/03/25(火) 02:29:45 ]
>>655
やりかたがまちがっている。
.h ファイルはコンパイルする必要はないよ。

660 名前:デフォルトの名無しさん mailto:sage [2008/03/25(火) 03:10:31 ]
>>653
[main.cpp]
#include <stdio.h>
void hoge_inc(void);
void hage_inc(void);
int count;
int main(int argc, char *argv[]) {
    count = 0;
    hoge_inc();
    printf("count = %d\n", count);
    hage_inc();
    printf("count = %d\n", count);
    return 0;
}
[hoge.cpp]
extern int count;
void hoge_inc(void) {
    count++;
}
[hage.cpp]
extern int count;
void hage_inc(void) {
    count++;
}

661 名前:デフォルトの名無しさん [2008/03/25(火) 11:28:05 ]
スレの内容見ながら直したら解決できました。
出てたエラーは
error LNK2001: 外部シンボル ""int mov_i" (?mov_i@@3HA)" は未解決です。
でファイルの依存関係が間違っていたのが原因でした。

>>656-660
有難うございました。

>>657
申し訳ないです・・・以後気をつけます

662 名前:デフォルトの名無しさん mailto:sage [2008/03/26(水) 04:03:10 ]
Windows 限定の話題で申し訳ないんですが、FARPROC 型というのが何なのかよくわからないので質問させてください。
MSDN の CallWindowProc の項目を見ると、FARPROC 型は

 typedef int (FAR WINAPI *FARPROC)();

と宣言されているらしいんですが、WINAPI は __stdcall だから良いとして、FAR というのは何なんでしょうか?
MinGW だと FAR は省略されてるので、付けても付けなくても同じな気がするんですが、
とすると FARPROC=ただの関数ポインタと考えちゃって構わないんですか?

663 名前:デフォルトの名無しさん mailto:sage [2008/03/26(水) 04:04:56 ]
16bitアドレッシング時代の残骸だろ。無視して医院で内科医。

664 名前:デフォルトの名無しさん mailto:sage [2008/03/26(水) 04:09:15 ]
>>663
ありがとうございます。なんかMS-DOS時代はFARとかNEARとか使ってたらしいのでそういうことなんですかね。
Windows だとこういうマクロとか typedef がやたらと多くて変な所でやたら苦労させられます(;´Д`)

665 名前:デフォルトの名無しさん mailto:sage [2008/03/26(水) 11:29:57 ]
どこかに#define FARと定義されているから、
プリプロセスが終われば消えてなくなる。



666 名前:デフォルトの名無しさん mailto:sage [2008/03/26(水) 19:20:32 ]
いい時代になったもんだ。

667 名前:デフォルトの名無しさん [2008/04/01(火) 23:30:29 ]
コンストラクタを定義しようと思っているのですが
ClassA();
ClassA(int nSize);
と定義して、実体を書く時に

ClassA::ClassA(){
this->ClassA(1);
}

と言う具合に書きたいんですが
error C2273: '関数形式のキャスト' : '->' 演算子の右側で使用できません。
となって出来ません。
何とか、良い方法はありませんでしょうか?
ClassA(int nSize=1);
もあるとは思うのですが、指定した場合、もう少し細かくコードを書きたいのです。


668 名前:デフォルトの名無しさん mailto:sage [2008/04/01(火) 23:35:07 ]
ほかのコンストラクタを呼ぶことは今のところ不可能だから、
privateな初期化関数を作ってそれを呼ぶのが常套手段。

669 名前:デフォルトの名無しさん [2008/04/08(火) 18:49:12 ]
nanosleepの使用例はどこかにありませんか?

670 名前:デフォルトの名無しさん mailto:sage [2008/04/08(火) 22:20:53 ]
>>669
ありますが、何か。

671 名前:デフォルトの名無しさん mailto:sage [2008/04/08(火) 22:24:11 ]
nanosleepの使用例なんて腐るほどあるわよ。ネットは広大ね。

って少佐が言ってた

672 名前:デフォルトの名無しさん mailto:sage [2008/04/08(火) 22:28:06 ]
あんなの、man引けば使い方なんて一発だろうに。

673 名前:デフォルトの名無しさん [2008/04/09(水) 04:07:45 ]
うちのman nanosleepには使用例は載っていないな〜〜

674 名前:デフォルトの名無しさん mailto:sage [2008/04/09(水) 06:39:06 ]
手取り足取り教えて貰わないと書けないんですか?

675 名前:デフォルトの名無しさん mailto:sage [2008/04/09(水) 07:04:28 ]
www.google.co.jp/codesearch



676 名前:デフォルトの名無しさん [2008/04/09(水) 08:05:20 ]
Visual C++でnanosleepに当たるものを教えてください

677 名前:デフォルトの名無しさん mailto:sage [2008/04/09(水) 08:59:32 ]
Sleep()
指定する時間単位と精度の違いに注意。






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<249KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef