Oracle APIを使用してデータベースにアクセスしていますが、このAPIにはreadBuffer(char * buffer, unsigned int size);
変更を加えることができない機能があります。
このAPIを使用するクラスがあり、現在、関数のシグネチャはサイズに対してastd::string
とaを取りますunsigned int
。問題は、関数のsize引数に渡すと、からへの変換が可能std::string.size()
であるという警告をコンパイラから受け取ることです。データ損失を引き起こします。size_t
unsigned int
をAPIに渡して、コンパイラから警告を受け取らないようにするための有効な方法があるかどうか疑問に思いました。size_t
unsigned int
size_tの目的を理解しており、この変換をGoogleで検索すると、「size_t argを取るように関数を変更する」という結果が多数表示されますが、この場合、APIの署名を変更することはできません。
助言がありますか?