問題タブ [mixed]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
.net - .NETアセンブリの混合(.NET3.5および.NET4.0クライアントプロファイル)
.NET 4.0クライアントプロファイルをターゲットにしたアプリケーションを展開したいと思います。これは、ほとんどのWindows7PCに展開されていると思うからです。使用するコンポーネントの中には.NET4.0を必要とするものがあるため、.NET 3.5を使用することはできません。また、可能であれば、完全な.NETFrameworkをインストールするように強制したくありません。
ただし、コードベースの一部には4.0クライアントプロファイルにないSystem.webが必要なため、4.0クライアントプロファイルアセンブリと一緒に3.5を対象としたアセンブリをパッケージ化したいと思います。繰り返しますが、唯一の目的は、ユーザーのPCにデフォルトでインストールされていないため、ユーザーが完全な.Net4.0フレームワークをインストールする必要がないようにすることです。
ただし、アプリをビルドしようとすると、次のようなリンケージエラーが発生します。タイプまたは名前空間名'XXXX'が見つかりませんでした(usingディレクティブまたはアセンブリ参照がありませんか?)C:.... \ WpfMixedAssemblies \ WpfMixedAssemblies \ MainWindow.xaml.cs
(両方のアセンブリが同じランタイムをターゲットにしている場合は、当然その問題はありません)
「回避策」をいただければ幸いです。たとえば、別のランタイムを対象とするアセンブリを親プロセスに動的にロードすることは可能ですか?
visual-c++ - ref クラス関数を呼び出す C++ (混合コード)
混合 DLL を参照するアプリケーション (CLI) があります。DLL は、静的関数を使用して "ref" クラスを実装します。
ref-class の (部分的な) コードは次のとおりです。
EXE 内の C++ コードで、両方の関数を呼び出そうとしています。
2 番目の関数にアクセスするにはどうすればよいですか?
sql - 複数のデータ型をデータベースに保存するための最良の方法は何ですか
さまざまなデバイスからのログ値を格納するために、MSSQLServer2005を使用してデータベースを設計しています。値のデータ型は、boolean、int-32、または64bit-doubleです。
と呼ばれるルックアップテーブルがありますchannels
:
値を格納するために呼び出されるテーブルがありvalues
ます。したがって、booleanおよびint-32のdouble値は、DECIMALデータ型にキャストされます。
select logtime,value from values where ID = 1
私がそうする理由は、エンドユーザーが、チャネルのデータ型を知らなくても、1つのテーブルで単純なselectステートメントを使用してデータを選択できるため
です。
しかし、これはメモリの浪費です。これで、int32とbooleanをDecimalに格納しました。私はデータベースプログラミングに不慣れですが、誰かがこれを行うためのより良い方法を知っているのだろうか?
jquery - いくつかのjQuery UIレンジスライダーを組み合わせるには?
いくつかのjQuery UI範囲のドラッグ可能なスライダーを組み合わせる方法を知っている人はいますか?
私が何を意味するかを示すサンプル画像:ここをクリック
単一範囲のドラッグ可能なスライダーのサンプル コード:
..私を助けてください。
c++ - boost::operators 混合算術
http://www.boost.org/doc/libs/release/libs/utility/operators.htm#exampleの例に基づいて、次の派生クラスを実装しましたboost::numeric::ublas::vector
。
ただし、次のコード スニペットをコンパイルすると、
「ISO C++は、最初の最悪の変換が2番目の最悪の変換よりも優れているにもかかわらず、これらはあいまいであると言っています」という警告を出し、ublas vector_expressionバージョン(u
ある種のvector_expressionとしてキャスト)と私のバージョンを提供します(2
キャストを a としてconst std::complex<double>&
)。
上記のコード スニペットのように、クラスで混合演算を使用できるようにしたいと考えていますが、boost::operators Web サイトの説明は明確ではありません。これを許可するには、クラスで何を追加または変更する必要がありますか?
また、この例では、継承リストには>
、前のクラスの最後に各クラスがあります。そのように書いても、上記のように書いても、コンパイラの出力に違いは見られません。正しい書き方はどれ?
よろしく、ブレット。
java - Java - 混合ArrayList?
オブジェクト型の混合物を ArrayList に格納することは可能ですか? もしそうなら、どのように?
これは私がこれまでに試したことです:
ただし、キャスト例外がスローされます。
ご意見をお寄せいただきありがとうございます。
matlab - Matlab はこのタイプの混合形式のテキストを読み取ることができませんか?
Matlab を使用して、奇妙な形式のテキスト ファイルを読み取る必要があります。1 列目は年、2 列目は月、3 列目は日です。
これは、これまでのところ成功していないコードです。 fid = fopen('data.txt','r'); データ = fscanf(fid, '%4d%2d%2d %f %f %f %f %f', [8 inf]); fclose(フィッド);
どんな提案でも感謝して認められます
触媒
performance - .NET 4.0 混合コード用の無料の .NET プロファイラー
ここで言及されているパフォーマンス プロファイラーのいくつかを調べました。しかし...
- プロファイリングするアセンブリが多数あり、プロファイリングするアセンブリに制限があるため、EQATec は機能しませんでした。無料のライセンスを取得するのはどれくらい面倒ですか? EQATec がマネージ コードとアンマネージ コードの両方をプロファイリングできることを誰かが保証してくれたら、私はそれを選びます
- 「Profile native functions」を「True」に設定しても、SlimTune はマネージ コードのみをプロファイリングします。
- XTE Profiler は無料ではなくなりました
- 以前に購入した AQTime 6 のコピーがありますが、.NET 4.0 アプリをサポートしていないようです (アプリを起動することさえできません)。
- Visual Studio 2010 Professional SP1 を使用しているため、Visual Studio プロファイラーはありません。
- 「貧乏人のプロファイリング」(プログラムを何度も停止して、その場所を確認する) を試しましたが、ランダムな結果が得られすぎて、従来のプロファイリングに慣れてしまいました。
(私はこれに困惑して一日を過ごしました、もし私があまりにも否定的だったらごめんなさい)
更新: ソリューションをクリーンアップし、再度ビルドして、すべてのデバッグ情報 (.pdb) が実行可能ファイルと同じディレクトリにコピーされていることを確認した後、AQTime を再試行したところ、機能しました! マネージド コードとアンマネージド コードの両方の定期的なタイミング情報が表示されたので、問題は解決しました。ただし、私は有料のプロファイラーを使用しているため、xperf を調べるか、誰かが何か他のことを思い付くまで、質問は未解決のままです。
ios - iphonesimulator gcc 4.2 でビルドされている Mac ターゲット
Mixed 3.2.5 iOS/MacOS プロジェクトには、既存の iOS スタティック ライブラリ ターゲットがあり、MacOS スタティック ライブラリを追加しています。ターゲットビルド設定(すべての構成)で私は
- ベース SDK を「最新の Mac OS X」に設定します。
- アーキテクチャを $(NATIVE_ARCH) に設定します
- 有効なアーキテクチャを i386 のみに設定
- 自分の PCH ファイルを使用する
- ヘッダーをヘッダーのコピー、Mac ターゲットにドラッグします
- ソースを Compile Sources の Mac ターゲットにドラッグします
- /System/Library/Frameworks/Foundation.framework にある Foundation.framework を追加し、新しい Mac ターゲットに設定します。
(/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/System/Library/Frameworks/Foundation.framework も存在しますが、iOS ターゲットの静的ライブラリに設定されています)
ターゲットはコンパイルされますが、製品は「Debug」ではなく「Debug-iphonesimulator」に表示されます。これはiOS Foundationにリンクしていると思いますか?それが何をしていても、それが安全だとは思いません。
追加する順序を変更しても効果がないようです。
助言がありますか?
perl - Perl で混合エンコーディング ファイルを UTF8 に変換することに関する質問
現在、私たちの大学の中国研究科の古い DOS ベースのライブラリ プログラムによって生成されたファイルを、より便利でアクセスしやすいものに変換しています。
私が対処している問題の 1 つは、エクスポートされたテキスト ファイル (サイズが約 80MB) が混合エンコーディングになっていることです。私はWindowsを使用しています。
ドイツ語のウムラウトやその他の上位 ASCII 文字は cp1252 でエンコードされていると思いますが、CJK 文字は GB18030 でエンコードされていると思います。エンコーディングが「重複」しているため、ファイル全体を Word などにドラッグして変換させることはできません。次のような結果が得られるためです。
元:
結果:
そこで、いくつかのステップで非 ASCII 文字を変換するいくつかのサブルーチンを含むスクリプトを作成しました。次のことを行います(特に):
一部の上位 ASCII 文字 (š、á など) を英数字コードに置き換えます (ファイルの他の場所に自然に現れる可能性は低いです)。例:
-Min, Jie / (šbers.)
->-Min, Jie / (uumlautgrossbers.)
注: 「変換表」を手動で作成したため、ドキュメントに実際に表示される特殊文字のみを考慮しました。したがって、変換は完全には完了していませんが、私の場合、適切な結果が得られます。私たちの本はほとんどがドイツ語、英語、中国語で書かれており、イタリア語、スペイン語、フランス語などの言語はごくわずかで、チェコ語などはほとんどないからです。上位 ASCII 範囲の別の文字が先行または後続していない場合にのみ
á, £, ¢, ¡, í
、英数字コードに置き換えます。(これらはおよび " " の cp1252 エンコード バージョンであり、cp1252 および GB18030 エンコード文字列の両方に表示されます。)\x80-\xFF
ß, ú, ó, í
small nordic o with cross-stroke
ファイル全体を読み取り、GB18030 から UTF8 に変換します。これにより、エンコードされた中国語の文字が実際の中国語の文字に変換されます。
英数字コードを Unicode に変換して戻します。
スクリプトはほとんど機能しますが、次の問題が発生します。
- 元の 80MB ファイルを変換した後も、Notepad++ はそれが ANSI ファイルであると認識し、そのように表示します。正しく表示するには、「エンコード-> UTF-8でエンコード」を押す必要があります。
私が知りたいのは:
一般に、混合エンコーディング ファイルを UTF-8 に変換するためのより良い方法はありますか?
そうでない場合は、サブルーチン
use utf8
で 16 進数表現の代わりに文字を直接入力できるように使用する必要がありますか?codes2char
ファイルの先頭にある BOM は、最初に ANSI ファイルとして表示される NP++ の問題を解決しますか? その場合、出力ファイルに BOM が含まれるようにスクリプトをどのように変更すればよいですか?
変換後、さらにいくつかのサブルーチンを呼び出したい場合があります (たとえば、ファイル全体を CSV または ODS 形式に変換するため)。
codes2char
サブルーチンの開始ステートメントを引き続き使用する必要がありますか?
コードは、最後に呼び出されるいくつかのサブルーチンで構成されています。
うわー、これは長かった。あまり複雑でないことを願っています
編集:
これは、上記の例の文字列の 16 進ダンプです。
説明する別の 2 つ:
1.
2.
どちらの場合も、16 進値 E1 があります。最初の例では、ドイツ語のシャープ s (ß、"Rußland"="Russia") を表し、2 番目の例では、マルチバイトの CJK 文字柔 (読み方: "rou") の一部です。
ライブラリプログラムでは、最初にロードする必要がある追加のプログラムで中国語の文字が入力および表示され、私が知る限り、低レベルでグラフィックスドライバーにフックされ、エンコードされた中国語の文字をキャッチして表示します他のすべてを放っておく間、キャラクターとして。ドイツ語のウムラウトなどは、ライブラリ プログラム自体によって処理されます。
これがどのように機能するか、つまり、HexE1 が単一の文字として扱われ、マルチバイト文字の一部であり、á
したがって変換される場合に応じて変換されるかどうかをプログラムがどのように認識するかを完全には理解していません。codepage X
codepage Y
私が見つけた最も近い概算は、その前後に他の特殊文字がある場合、特殊文字は中国語の文字列の一部である可能性が高いということです。(例ÎÂÈá¶Øºñ
)