[解決済み】non-constへの参照の初期値はlvalueでなければならない。
2022-01-01 10:55:21
質問
参照ポインタを使用して、関数に値を送信したいのですが、コードは以下の通りです。
#include "stdafx.h"
#include <iostream>
using namespace std;
void test(float *&x){
*x = 1000;
}
int main(){
float nKByte = 100.0;
test(&nKByte);
cout << nKByte << " megabytes" << endl;
cin.get();
}
実行すると、エラーが発生します。
Error : initial value of reference to non-const must be an lvalue
解決方法は?
でポインタを渡した場合、そのポインタは
const
を参照することは、そのポインタの値を変更することをコンパイラに伝えていることになります。あなたのコードはそのようなことをしませんが、コンパイラはそのように考えているか、将来的にそうする予定です。
このエラーを修正するには
x
定数
// This tells the compiler that you are not planning to modify the pointer
// passed by reference
void test(float * const &x){
*x = 1000;
}
へのポインタを代入する変数を作るか、あるいは
nKByte
を呼び出す前に
test
:
float nKByte = 100.0;
// If "test()" decides to modify `x`, the modification will be reflected in nKBytePtr
float *nKBytePtr = &nKByte;
test(nKBytePtr);
関連
-
Swift言語とAppleScriptの違い、AppleScriptの開発状況について教えてください。
-
CE5.2版を使って、武術のベースサイトである第一レベルのメソッドを見つける(グラフィックチュートリアル)。
-
[解決済み] '\r': コマンドが見つかりません - .bashrc / .bash_profile [重複].
-
[解決済み】例外:AAPT2エラー:詳細はログを確認してください。
-
[解決済み】Looper.prepare()を呼び出していないスレッド内でハンドラを作成できない。)
-
[解決済み】エラー。式はintegralまたはunscoped enum型でなければなりません。
-
[解決済み】ウィンドウ階層にないビューを持つUIViewControllerでUIViewControllerを表示しようとする
-
[解決済み】math.hを含むにもかかわらず、C言語でpow( )への未定義参照【重複あり
-
[解決済み】count()パラメータは配列かlaravelのcountableを実装したオブジェクトでなければならない。
-
[解決済み】AdMobにアプリケーションを入れたら「ライブラリが見つからない」というエラーが出た
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
非常に詳細な2つのシェルコードの例
-
期限切れのアカウントを自動的に禁止するRouterOSスクリプト
-
LinuxでRの新バージョンを直接コピーする方法
-
[解決済み】C++エラー: 予想されるunqualified-idを修正する方法
-
[解決済み】ValueError: shape mismatch: オブジェクトを1つの形状にブロードキャストできない
-
[解決済み】C++ Cout & Cin & System "Ambiguous" [クローズド]。
-
[解決済み】ValueError: 入力配列を形状 (224,224,3) から形状 (224,224) にブロードキャストできませんでした。)
-
[解決済み】dyld: ライブラリがロードされない ... 理由: 画像が見つからない
-
[解決済み] MIPSのフェッチアドレスがワード境界にアライメントされていないため、.align 4を使用したが、まだうまくいかない
-
[解決済み] [Solved] libpthread.so.0: error adding symbols: コマンドラインからDSOが見つからない