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


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

C++/CLI について語ろうぜ Part2



1 名前:デフォルトの名無しさん mailto:sage [2006/03/12(日) 16:08:39 ]
おそらく、.NET開発でデファクトスタンダードに最も近い
であろうC++/CLIについて語ろうぜ!

このスレはC++および.NET Frameworkについて一定以上の知識を持っている人が対象となります。
.NETのクラスライブラリの使い方といった質問は姉妹スレ「くだすれC++/CLI(初心者用)」に
お願いします。

前スレッドはこちら
(p)pc8.2ch.net/test/read.cgi/tech/1126450441/l50

姉妹スレ
くだすれC++/CLI(初心者用)
(p)pc8.2ch.net/test/read.cgi/tech/1142144110/l50
managed C++ やろうぜ!! 002
(p)pc8.2ch.net/test/read.cgi/tech/1139043535/l50


422 名前:デフォルトの名無しさん mailto:sage [2007/08/07(火) 23:26:28 ]
アノニマスな構造体があったの?

423 名前:418 mailto:sage [2007/08/08(水) 20:34:16 ]
どうやらプロジェクトファイルが壊れていた模様。
もう一回プロジェクト変換しなおして
ソースとヘッダ入れたら動いた。

お騒がせスマソ

>>422
なかった

424 名前:デフォルトの名無しさん mailto:sage [2007/08/18(土) 04:43:41 ]
VC++ expressで
C++/CLIを使うときの制限事項ってどんなのがありますか?

425 名前:デフォルトの名無しさん mailto:sage [2007/08/18(土) 12:05:30 ]
別に何も無いよ

426 名前:デフォルトの名無しさん mailto:sage [2007/08/19(日) 05:45:05 ]
え?そうなの?

デバッグ機能とかGUIのデザインあたりが
はしょられてるんかと思ってた

427 名前:デフォルトの名無しさん mailto:sage [2007/08/19(日) 08:36:21 ]
>>424
msdn2.microsoft.com/ja-jp/library/hs24szh9(VS.80).aspx

428 名前:デフォルトの名無しさん [2007/08/19(日) 21:32:30 ]
intからenum(enum classじゃない)に変換したいんだが
普通のC言語のようにただのキャストじゃ変換できない?
どうもできていないような気がするんだが。


429 名前:デフォルトの名無しさん mailto:sage [2007/08/19(日) 22:09:33 ]
>>428
enum classじゃないenumはC++のそのままですよね?
単に使い方がおかしいだけでは。ソースを示してみたらどうです。

430 名前:デフォルトの名無しさん mailto:sage [2007/08/19(日) 22:34:08 ]
DirectXのコードなんだが

D3DFORMAT fmt = (D3DFORMAT)21;




431 名前:デフォルトの名無しさん mailto:sage [2007/08/19(日) 22:38:04 ]
実際のコードでは21の部分は変数になってる。
ユーザの入力。


432 名前:デフォルトの名無しさん mailto:sage [2007/08/19(日) 22:44:36 ]
実体が unsigned long int なんじゃね?

433 名前:デフォルトの名無しさん mailto:sage [2007/08/19(日) 23:03:15 ]
ヘッダではこうなってる
typedef enum _D3DFORMAT
{
(省略)
D3DFMT_A8R8G8B8 = 21,
(省略)
} D3DFORMAT;


434 名前:デフォルトの名無しさん mailto:sage [2007/08/19(日) 23:05:14 ]
直後にブレークポイントつけてウォッチすると
fmtが「未定義の値」になってる。


435 名前:デフォルトの名無しさん mailto:sage [2007/08/19(日) 23:48:25 ]
これで普通に代入できたぞ?

int val = 21;
D3DFORMAT fmt = (D3DFORMAT) val;
std::cout << fmt << std::endl;

VS 2008 Beta2 なんで、2005でも大丈夫かわからんが

436 名前:デフォルトの名無しさん mailto:sage [2007/08/19(日) 23:52:56 ]
version違いの*.hがあって、21がない方のをincludeしてるとか。

437 名前:デフォルトの名無しさん mailto:sage [2007/08/20(月) 00:53:44 ]
d3d9types.h なんて前からあるっしょ
これでリリース・ビルドしていたせいで変数がデバッガ上で正常に表示されていなかった
なんてオチだったら指さして笑うが

438 名前:デフォルトの名無しさん mailto:sage [2007/08/20(月) 23:24:44 ]
C++/CLIって実際どのくらい使われてるの?

439 名前:デフォルトの名無しさん mailto:sage [2007/08/21(火) 01:02:33 ]
Dの5倍くらい。

440 名前:デフォルトの名無しさん mailto:sage [2007/08/21(火) 06:26:53 ]
>>438
俺仕事で使ってる
ただのラッパークラスだが



441 名前:デフォルトの名無しさん [2007/08/21(火) 09:18:49 ]
>>440
ネイティブのライブラリをドトネトから使うため?

442 名前:デフォルトの名無しさん mailto:sage [2007/08/21(火) 20:54:43 ]
>>411
前の製品の再利用可能な部分
GUIはC#になっちまった

443 名前:デフォルトの名無しさん mailto:sage [2007/08/21(火) 20:55:14 ]
安価ミス
>>441

444 名前:デフォルトの名無しさん mailto:sage [2007/08/21(火) 23:01:14 ]
>435
enumは int だし。ってのはCの仕様だっけか。


445 名前:428 mailto:sage [2007/08/22(水) 21:45:58 ]
どうやらint関係なしに
直接D3DFMT_R8G8B8を入れても
<未定義の値>になる。

デバッグにはなってるんだが。



446 名前:デフォルトの名無しさん mailto:sage [2007/08/22(水) 22:32:24 ]
enum は含まれる値を全て表現可能なサイズの型になる。

447 名前:デフォルトの名無しさん mailto:sage [2007/08/23(木) 08:38:13 ]
>445
直接、D3DFORMAT の enum 値を出力してみたら?
TRACE でも cout でも何でもいいけど

ちなみに、コンパイラは VC8 なんだよな?

448 名前:デフォルトの名無しさん mailto:sage [2007/08/23(木) 21:02:06 ]
>>447
ちゃんと21が出たw
VC8です

デバッガがミスっただけかな。

449 名前:デフォルトの名無しさん mailto:sage [2007/08/29(水) 18:29:40 ]
フォームを多言語化して、ニュートラルと日本語のリソースを交互にいじってると
設定した値が元に戻ったりするんですが、これについて何かご存じな方
いらっしゃいますか?

450 名前:デフォルトの名無しさん mailto:sage [2007/08/29(水) 18:35:42 ]
追記です
VS2005上での話です。



451 名前:デフォルトの名無しさん mailto:sage [2007/09/01(土) 15:44:35 ]
この言語ほんとに流行りそうなの?

452 名前:デフォルトの名無しさん [2007/09/01(土) 20:26:10 ]
.NET が流行れば。
だって既存の C++ のライブラリの
ラッパーとしての存在価値は少なくともあるから。

で、.NET というか CLR ってこれからはやるのかね?
mono でも ASP.NET をはじめとしていろいろ動く
ようになってるし、.NET Compact Framework も
広がりを見せているようだけど。

453 名前:デフォルトの名無しさん mailto:sage [2007/09/01(土) 21:22:06 ]
C++/CLI自体が単体で流行ることはないと思う。
あくまでもC++の資産を.NETで利用するためのツール。

454 名前:デフォルトの名無しさん mailto:sage [2007/09/01(土) 22:30:15 ]
C++/CLI 自体は JDirect の正当な発展系だと思う
.net が COM 拡張として発生したように、外部管理オブジェクトのハンドリング用言語として
C++ を拡張したものだから
Windows 用の Objective-C みたいなものなんだけどなぁ

455 名前:デフォルトの名無しさん [2007/09/01(土) 23:46:12 ]
Objective-C つかったことないや

456 名前:デフォルトの名無しさん mailto:sage [2007/09/01(土) 23:48:42 ]
はいはい死滅死滅

457 名前:デフォルトの名無しさん [2007/09/02(日) 14:31:02 ]
2008になったらC++CLIは何かかわんの?

458 名前:デフォルトの名無しさん mailto:sage [2007/09/02(日) 14:47:34 ]
>>457
STL/CLRとこれまで規格に非準拠だった部分の対応。
例えばC型配列がarrayと同等に扱えるようななった。

459 名前:デフォルトの名無しさん [2007/09/02(日) 16:07:58 ]
がるぽっ

460 名前:デフォルトの名無しさん mailto:sage [2007/09/02(日) 16:09:48 ]
C++0x が確定するまでは、大きな修正は入れてこないだろうね
また、いろいろと言われるから(w



461 名前:デフォルトの名無しさん [2007/09/02(日) 16:50:15 ]
なんか、見た目が変態的なソースコードになるよな・・・

無理矢理.netに対応させた文法を追加せずに、
C++にライブラリで誤魔化したほうがマシな気が・・・

.netに最適化した言語、とかならC#ってのをやってるのだし、
あんまりC++/CLIの存在意味がないような・・・

462 名前:デフォルトの名無しさん mailto:sage [2007/09/02(日) 18:05:21 ]
それをやったのが mc++ で、マネージド・オブジェクトの判別が付かなくなったので
明示的に分離するように変更したんだよ
C++ は既存のままで、CLI を追加構文で、これでようやく見通しが良くなったのさ

oldSyntax で一度書いてみると、ライブラリで対応って言うのが以下に非現実的か
よくわかるよ

463 名前:デフォルトの名無しさん [2007/09/02(日) 20:13:36 ]
正直 Managed C++ は「よけいわかりにくいわ!」って
感じだったからな。マネージドな部分とそうでない部分が
明確に分かれている C++/CLI のほうがわかりやすい。
確かに上にあった Objective C の Microsoft 版だという
たとえは的を射ていると思う。

464 名前:デフォルトの名無しさん mailto:sage [2007/09/02(日) 21:16:36 ]
漏れにスキルさえあれば、JVM や Squeek に CLI ラッパをかぶせて、GCC の C++/CLI
実装を作ってみるのになぁ

465 名前:デフォルトの名無しさん [2007/09/07(金) 18:04:21 ]
.NET2005 C++/CLIで開発しています。
設定情報をapp.comfigから読みだすために
app.config(appはプログラム名へ後に変換)へ例えば
<?xml version="1.0" encoding="utf-8"?>
<configuration>
 <appSettings>
  <add key="HOGE" value="ほげほげ" />
 </appSettings>
</configuration>
と書いて、C++/CLIのコード(フォームアプリ)からは、
MessageBox::Show(System::Configuration::ConfigurationSettings::AppSettings[ "HOGEHOGE"]);
MessageBox::Show(System::Configuration::ConfigurationManager::AppSettings[ "HOGEHOGE"]);
と呼び出して表示しているのですが、OSがXP(SP2)だとうまくいき、
Win2000(SP4)だと表示が空文字になってしまいます。
MSDNにはWin2000(SP4)もサポートしているように書いてありますし、
vcregist_x86.exeやdotnetfx.exeも実行してあるのですが。。。
このあたりの情報(こうすれば動く、実はサポート外など)を
お持ちの方、いましたら教えていただけませんか。
ネットで散々探しましたが、意外とこの話題少ないんです。
よろしくお願い板します。


466 名前:465です [2007/09/07(金) 18:08:54 ]
ごめんなさい。
<add key="HOGE" value="ほげほげ" />

<add key="HOGEHOGE" value="ほげほげ" />
の間違いです。


467 名前:デフォルトの名無しさん [2007/09/08(土) 09:39:16 ]
レベル高すぎ

468 名前:デフォルトの名無しさん mailto:sage [2007/09/08(土) 12:14:40 ]
>>465
うちの環境だと正常に読めてる。Vertual PCでWin2k(SP4)。
xx.exe.configの名前はあってる?

469 名前:デフォルトの名無しさん mailto:sage [2007/09/11(火) 02:02:27 ]
>>468
>xx.exe.configの名前はあってる?
それ、ビンゴです!
C#やVBはビルド時に自動でファイル名つけてくれるのに。。。

470 名前:デフォルトの名無しさん [2007/09/22(土) 02:10:50 ]
過疎ってんなー
やっぱりC++/CLIは
流行らないってことでおk?



471 名前:デフォルトの名無しさん mailto:sage [2007/09/22(土) 03:07:29 ]
だってマネージ・アンマネージの橋渡し専用言語だもん

472 名前:デフォルトの名無しさん mailto:sage [2007/09/22(土) 10:36:17 ]
GDI+死ぬほどのろいんで、ペイントルーチンをC++/CLIでGDI使って
組めばいいんじゃね
テキスト描画すんのもGDIのが楽なような

473 名前:デフォルトの名無しさん mailto:sage [2007/09/22(土) 11:09:00 ]
>>472
VistaでDDBの速度的有利さは事実上消滅したけどな

474 名前:デフォルトの名無しさん mailto:sage [2007/09/22(土) 12:22:14 ]
DirectDraw(笑)

475 名前:デフォルトの名無しさん mailto:sage [2007/09/22(土) 13:28:37 ]
>>473
.NETがのろくて誰も使ってくれないから全員平等にのろくしたって感じだな

476 名前:デフォルトの名無しさん mailto:sage [2007/09/22(土) 15:55:56 ]
馬鹿?

477 名前:デフォルトの名無しさん mailto:sage [2007/09/22(土) 20:13:30 ]
.NETは最初から馬鹿だよ。

478 名前:デフォルトの名無しさん mailto:sage [2007/09/22(土) 20:14:39 ]
>>475
Direct3DとWPFは仲間はずれ?

479 名前:デフォルトの名無しさん [2007/09/23(日) 04:10:23 ]
>>471
まぁそうなんだろうけど、そういう言語が CLI 上にちゃんと
用意されているところが Java VM とは違うところだよな。
といってドトネトを擁護してみる。

いや、漏れは好きだよ C++/CLI。というかこれがないと困る。
研究用のシミュレータをC++で boost とかのライブラリ使って
書いてるけど、フロントエンドの GUI が Windows Forms で
組めるのは楽だよ。

480 名前:デフォルトの名無しさん mailto:sage [2007/09/23(日) 07:26:58 ]
それって逆に選択肢がないんじゃ… > シミュ&Win Forms



481 名前:デフォルトの名無しさん [2007/09/23(日) 08:18:37 ]
>>480 そうともいう。
シミュレータ自体はライブラリ化していて、コマンドライン版は
Linuxクラスタで動かしているんだけど、同じライブラリを
リンクしてWindowsで動くGUI版を作れるというのはかなり便利。

C# と C++/CLI と両方使って思うんだけど、 Windows Form デザイナ
って両者の言語でかなり安定感ちがわないか?
C++/CLI だとちょっとでも自動生成されたコードいじると
もうデザイナが発狂してしまう感じ。どの程度いじってもOKなのか
基準がよくわからない。C# のほうも基準がわからないという点では
同じなんだけど、結構いじっても Windows Form デザイナが
ちゃんと認識してくれる気がする。気がするだけか?

482 名前:デフォルトの名無しさん mailto:sage [2007/09/23(日) 12:28:25 ]
C#のほうが解析しやすい言語だから

483 名前:デフォルトの名無しさん mailto:sage [2007/09/23(日) 12:57:21 ]
解析なんてしてないだろw


484 名前:デフォルトの名無しさん mailto:sage [2007/09/23(日) 13:05:02 ]
>>483

485 名前:デフォルトの名無しさん [2007/09/25(火) 14:00:50 ]
プリコンパイル済みヘッダーは
C++/CLIで使えるのでしょうか?


486 名前:デフォルトの名無しさん mailto:sage [2007/09/25(火) 17:51:40 ]
使える

487 名前:デフォルトの名無しさん [2007/09/26(水) 23:29:57 ]
プロパチー見ろ

488 名前:デフォルトの名無しさん mailto:sage [2007/09/27(木) 01:24:24 ]
C++で今まで書いてきて
GUIをもっとバリバリやりたくなってきたんですが
かといってMFCは嫌い。
C#は書き直すのがめんどいし
そんな漏れはC++/CLIがいい?

489 名前:デフォルトの名無しさん mailto:sage [2007/09/27(木) 06:58:21 ]
>>488
Win32

490 名前:デフォルトの名無しさん [2007/09/27(木) 09:23:42 ]
ネイティブで書かれた関数(数値計算のエンジン)を別のスレッドで動かして、
結果をグラフィカルに表示するなんてことができます?
ネイティブの_begin_thread 関数を呼び出す必要が有りますか?
それともドトネトのなにかを呼び出すべきなんでしょうか?



491 名前:デフォルトの名無しさん mailto:sage [2007/09/27(木) 09:42:20 ]
>>490
どちらでも可能だが、
マネージドのスレッドを使ったほうが取り扱いが楽だと思う。

492 名前:デフォルトの名無しさん mailto:sage [2007/09/27(木) 09:44:11 ]
ネイティブを混ぜるマネージドアプリに何の意味がある。

493 名前:デフォルトの名無しさん mailto:sage [2007/09/27(木) 09:47:20 ]
>>492
C++/CLIスレでそれを言うなよ。/safeにどの程度の意味があるんだ?

494 名前:デフォルトの名無しさん mailto:sage [2007/09/27(木) 11:09:31 ]
>>492
ネイティブってどういう意味で使ってるの?

495 名前:デフォルトの名無しさん mailto:sage [2007/09/27(木) 11:10:25 ]
>>494
マネージドアプリをアンマネージドアプリにする混ぜ物。

496 名前:デフォルトの名無しさん mailto:sage [2007/09/27(木) 12:42:32 ]
むしろ逆だろ
pureでやりたいなら C# で十分じゃん
C++/CLI はそれだけじゃ物足りない人向けだろ

497 名前:デフォルトの名無しさん mailto:sage [2007/09/27(木) 12:50:00 ]
WTLを忘れるな

498 名前:デフォルトの名無しさん mailto:sage [2007/09/27(木) 15:31:12 ]
数値演算をC++にさせて「何の意味がある」って言われるなら、
<funcional>すら駄目ってことになるが…

499 名前:デフォルトの名無しさん mailto:sage [2007/09/27(木) 15:41:05 ]
C#って初期バージョンで完成形だったのに
だんだん拡張されてキモクなってるよな。


500 名前:デフォルトの名無しさん mailto:sage [2007/09/27(木) 16:21:17 ]
全然



501 名前:デフォルトの名無しさん mailto:sage [2007/09/27(木) 18:14:05 ]
C#程度でキモいっつーんならC++とか使えないだろ

502 名前:デフォルトの名無しさん mailto:sage [2007/09/27(木) 18:18:33 ]
>>488
楽したいならC# + C++/CLIとかWPFとか
厳しい道を行きたいなら DirectX Graphics


503 名前:デフォルトの名無しさん mailto:sage [2007/09/27(木) 20:00:15 ]
おまえ、なんかものすごい勘違いしてない?

504 名前:デフォルトの名無しさん [2007/09/28(金) 01:23:51 ]
C#にある delegate の ThreadInvoke メソッドを使った
○ちスレッド処理って、同様のことは C++/CLI では
できないのかな。そもそも delegate がないから無理か。

505 名前:デフォルトの名無しさん [2007/09/28(金) 01:25:43 ]
ThreadInvoke じゃなかった、BeginInvoke だった。
それに、そもそも C++/CLI にも delegate はあるんだった。

506 名前:デフォルトの名無しさん mailto:sage [2007/09/28(金) 01:44:23 ]
なにを言っているんだ

507 名前:デフォルトの名無しさん [2007/09/28(金) 06:58:38 ]
C++/CLIではコンテナクラスライブラリとして STL.NET
なるものを使うべきなんですか?それとも .NET Framework
にはほかにも(言語独立の)コンテナが用意されていて
そちらを使うべきなんですか?

508 名前:デフォルトの名無しさん mailto:sage [2007/09/28(金) 09:23:21 ]
好きな方を使えばいい
C# で慣れてるなら .net の Collections を使えばいいし、違和感がないなら STL.NET で
いい。格納するものがネイティブだったら、既存のライブラリでもいいだろうし

509 名前:デフォルトの名無しさん [2007/09/28(金) 21:18:24 ]
C++/CLI では単純型の配列って初期化されるんでしょうか?
あと、配列の持つ Clone メソッドっていわゆる浅いコピー
しか作ってくれないんですよね?ハンドルを深くたどって
完全にコピーを作ってくれるようなメソッドはありませんか?
自分でディープコピーしないとだめ?

510 名前:デフォルトの名無しさん mailto:sage [2007/09/28(金) 21:32:10 ]
一般論だけどDeepCopyの仕様はクラス作成者にしか決められないんじゃないかな。



511 名前:デフォルトの名無しさん mailto:sage [2007/09/29(土) 00:18:26 ]
>509
Primitive型と値型は初期化される

512 名前:デフォルトの名無しさん [2007/09/29(土) 09:20:50 ]
ディープコピーのためのインターフェイスを実装していれば
自動的にディープコピーまでやってくれるなんてことは
ないんですかね。Microsoft では「簡易コピー」と「詳細コピー」
って呼んでるみたいですが、たとえば System::Array の
Clone は簡易コピーですよね?

513 名前:デフォルトの名無しさん mailto:sage [2007/09/29(土) 15:17:17 ]
自動でディープコピーやったら、循環参照のときコピー終わらなくなっちゃうよ。

ArrayのCloneは簡易コピーだけど、
一般的にICloneableインターフェース実装が
簡易コピーでないといけないということはない。
Cloneメソッドが簡易と詳細どちらのコピーをするかは、
実装者に任せるというのが一般的じゃない?

だから、既存のコピー実装が気に入らなければ、
外部で独自のコピー方法を定義するしかないよ。

514 名前:デフォルトの名無しさん [2007/09/30(日) 16:50:24 ]
CEDEC2007で
3ds maxは、C++/CLI使ってるようなこと言ってた。
プラグインもC++/CLIだし


515 名前:デフォルトの名無しさん [2007/09/30(日) 17:49:50 ]
コンテナはC++CLIならSTL+Boostがいいのかな?

516 名前:デフォルトの名無しさん [2007/09/30(日) 18:17:40 ]
>>515
ネイティブなクラスのインスタンスを格納するか
マネージドなクラスのインスタンスへのハンドルを格納するかに
よるんじゃね?boost::shared_ptr で格納するなら
また話は発散する。

517 名前:デフォルトの名無しさん [2007/09/30(日) 19:02:28 ]
スタティックライブラリを利用しようとしたところ
(libcmtd.lib等とぶつかる系も回避しました)

DotNetTest2003_00 error LNK2020: 未解決のトークン (0A000013) exception.__ctor
DotNetTest2003_00 error LNK2020: 未解決のトークン (0A000030) exception.__dtor
DotNetTest2003_00 fatal error LNK1120: 外部参照 2 が未解決です。

って出ました。
これは何が原因なのでしょうか?


518 名前:デフォルトの名無しさん mailto:sage [2007/09/30(日) 19:52:08 ]
>517
それは C++/CLI なの?

519 名前:デフォルトの名無しさん [2007/09/30(日) 23:09:35 ]
プロジェクトは、C++/CLIです。
stdafx.hに
#include <windows.h>
#pragma comment(lib, "user32.lib")
書いてます

ライブラリのほうは、C++/CLIじゃありません


520 名前:デフォルトの名無しさん mailto:sage [2007/09/30(日) 23:37:16 ]
>>519
ライブラリは /MDでコンパイルしてます?



521 名前:デフォルトの名無しさん mailto:sage [2007/09/30(日) 23:42:45 ]
     〜〜〜〜
  /        ヽ
 /   >~~~~~~~~/
 |  ∠  \  / |
| √  ⌒  <⌒ |   / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
 (6 ≡      \|   |  やる前から負けることを
   ≡  ┌ __「|  <
   \   \_( |   |  考えるバカがいるかコノヤロー!
     \   ー |   |
      \___|   \_____________

522 名前:デフォルトの名無しさん mailto:sage [2007/09/30(日) 23:44:19 ]
誤爆スンマソ






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

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

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