Microsoft GSL(Guidelines Support Library) ライブラリの導入

提供:yonewiki
2024年2月22日 (木) 22:47時点におけるYo-net (トーク | 投稿記録)による版 (ページの作成:「言語と開発環境に戻る。 == '''概要''' ==  GSLというのはGuidelines Support Libraryのことをここでは言っていますが、まったく同じ略称でGNU Scientific Libraryというものもありますので、ご注意を。  Microsoftが提供しているものなので、Microsoft GSLと書けば、Guidelines Support Libraryに絞られます。C98規格にも対応するGSL Liteという…」)
(差分) ← 古い版 | 最新版 (差分) | 新しい版 → (差分)

言語と開発環境に戻る。

概要

 GSLというのはGuidelines Support Libraryのことをここでは言っていますが、まったく同じ略称でGNU Scientific Libraryというものもありますので、ご注意を。


 Microsoftが提供しているものなので、Microsoft GSLと書けば、Guidelines Support Libraryに絞られます。C98規格にも対応するGSL Liteというものもあるそうです。Liteとつかないものは、C++14以上を対象にしているように見受けられます。


 公式サイトはhttps://github.com/microsoft/GSLのGithubにあるようです。


 C++コードの品質、可読性、およびセキュリティを向上させるために提供されるオープンソースのライブラリです。GSLは、C++ Core Guidelines(C++の設計およびプログラミングに関する一連のガイドライン)に基づいています。これらのガイドラインは、C++プログラムの安全性と効率性を向上させるためのベストプラクティスを提供しています。


  • gsl::span:
 メモリ領域を指す軽量かつ安全なスライスを表現するためのクラス。範囲の概念を提供し、メモリのアクセスや操作を安全に行うことができます。
  • gsl::index:
 インデックスの範囲を表現するためのクラス。インデックスの有効性を確認し、オーバーフローやアンダーフローを防ぐために使用されます。
  • gsl::not_null:
 ポインタがnullでないことを表現するためのクラス。nullポインタの不正な使用を防ぎ、プログラムの安全性を向上させます。
  • gsl::narrow_cast:
 整数型の変換を行うための関数。情報の損失がないかを確認し、損失が発生する場合は警告を発生させます。


 

言語と開発環境に戻る。