[解決済み] test *" から "test" に変換するための適切なコンストラクタが存在しない。
2022-02-01 23:39:07
質問
を初めて利用します。
c++
で、コンストラクタとクラスで苦労しています。以下は私のヘッダーファイルです。
#pragma once
#include <string>
using namespace std;
class test
{
private:
string name;
int number;
public:
test();
test(string i,int b);
};
これはcppファイルです。
#include "test.h"
#include <string>
using namespace std;
test::test(){}
test::test(string i,int b){
this->name=i;
this->number=b;
}
を呼び出そうとすると
test t=new test("rrr",8);
得ることができる。
1 IntelliSense: no suitable constructor exists to convert from "test *" to "test"
では、クラスが
*
のように、アスタリクスを付けないクラスがあるのでしょうか?そして、私は何を間違えているのでしょうか?
解決方法は?
Java/C#のバックグラウンドをお持ちの方でしょうか。
t
はここでは参照型ではなく、値型です。
new
はオブジェクトへのポインタを返します。 ですから、次のどれかが必要です。
test t = test("rrr", 8);
test t("rrr", 8);
test *t = new test("rrr", 8);
もし、あなたがまだポインターについてよく知らないのなら、最後のものは絶対に使わないでください しかし、ポインタのセマンティクスを理解することはかなり重要です。教科書の関連する章を読むことをお勧めします。
関連
-
[解決済み] C++で、あるコンストラクタを別のコンストラクタから呼び出す(コンストラクタ・チェイニングを行う)ことは可能ですか?
-
[解決済み] JavaScriptのオブジェクトにキーが存在するかどうかをチェックする?
-
[解決済み] Java で、あるコンストラクタを別のコンストラクタから呼び出すにはどうすればよいですか?
-
[解決済み] C++でintをstringに変換する最も簡単な方法
-
[解決済み] C#でベースコンストラクタを呼び出す
-
[解決済み] コンストラクタ内の仮想メンバー呼び出し
-
[解決済み] JSオブジェクトをJSON文字列に変換する
-
[解決済み] あるコンストラクタを別のコンストラクタから呼び出す
-
[解決済み] ベースクラスのコンストラクタを呼び出す際のルールは?
-
[解決済み】オブジェクトからプロパティを削除する(JavaScript)
最新
-
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 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】Visual Studio 2015で「非標準の構文; '&'を使用してメンバーへのポインターを作成します」エラー
-
[解決済み】C++ - 解放されるポインタが割り当てられていないエラー
-
[解決済み】関数名の前に期待されるイニシャライザー
-
[解決済み】テンプレートの引数1が無効です(Code::Blocks Win Vista) - テンプレートは使いません。
-
[解決済み】C++の変数はイニシャライザーを持っているが、不完全な型?
-
[解決済み】デバッグアサーションに失敗しました。C++のベクトル添え字が範囲外
-
[解決済み】C++の余分な資格エラー
-
[解決済み] 解決済み] `pthread_create' への未定義の参照 [重複] [重複
-
[解決済み] to_string は std のメンバーではない、と g++ が言っている (mingw)
-
[解決済み】c++で.txtファイルから2次元の配列に読み込む