hageking
@hageking

Are you sure you want to delete the question?

Leaving a resolved question undeleted may help others!

c++

Q&A

Closed

解決したいこと

コンストラクタを使用しメンバ変数を書き換えるプログラムを作りました。
メンバ関数(test_function())で出力すると、「w」と出力されてしまいます。
main関数で指定した「aa」と出力するにはどうしたら良いでしょうか?

main.cpp
#include <iostream>
using namespace std;

class test_class
{
public:
    char *str = "w";
    test_class(char *temp){
        char *str = temp;
    }
    void test_function()
    {
        cout << str;
    }
};

int main(){
    test_class test_class("aa");
    test_class.test_function();
    return 0;
}
出力
w
0

1Answer

ローカル変数のstrを定義する文になっちゃってましたね

    test_class(char *temp){
-       char *str = temp;
+       str = temp;
    }
4Like

Comments

  1. @hageking

    Questioner

    回答ありがとうございます。
    解決しました。

Your answer might help someone💌